我们知道, 在location对象中, 可以直接获取 hostname, search , hash 等参数
而链接的url中, 我们没有现成的API可以获取这些参数
下面是一个小方法, 可以得到链接中的各种参数
function parseURL(url) {
var ret = {};
ret.href = url;
var match = url.match(/^([^\/:]+:)?(?:\/\/([^\/:]*)(?::([\d]+))?)?(\/?[^\?#]*)?(\?[^\#]*)?(#.*)?$/i);
if (match) {
ret.isValid = true;
ret.protocol = match[1] || '';
ret.hostname = match[2] || '';
ret.port = match[3] || '';
ret.host = ret.hostname + ret.port ? ':' : '' + ret.port;
ret.pathname = match[4] || "/";
ret.origin = ret.protocol + ret.host ? '//' : '' + ret.host;
ret.search = match[5] || '';
ret.hash = match[6] || '';
} else {
ret.isValid = false;
ret.path = ret.url;
}
return ret;
}
分享到:
相关推荐
【标题】"网址转换器(ParseURL)"是一种工具,它的主要功能是解析并转换网址,以获取实际的下载链接。在互联网上,很多资源的下载地址并非直接指向文件本身,而是通过一些中间页面或者动态脚本处理后才能获取到真实的...
### JavaScript parseUrl函数详解 #### 一、函数概述 `parseUrl` 函数是一个用于解析 URL 的实用工具函数。它可以将一个完整的 URL 分解为多个组成部分,并返回一个包含这些部分的对象。这种分解对于处理和操作 ...
JavaScript中的parseURL函数是一个非常实用的工具,它能够解析一个URL,并将其中的各个组成部分(如协议、主机名、端口、路径、查询字符串等)提取出来,方便开发者使用。这个函数通常不是JavaScript内置的一部分,...
如果URL被恶意构造,那么在`parseUrl()`方法中可能会发生不安全的解析行为,导致恶意代码被执行。 ##### 4. 漏洞修复建议 为了防止此类漏洞的发生,建议采取以下措施: - **输入验证**:加强对用户输入数据的验证...
... ... ...该工具类提供了多种方法来发送 GET、POST、PUT、DELETE 等请求,并且支持设置超时时间、代理服务器、证书验证等功能。...1. `init()` 方法:该方法用于初始化连接池,设置最大连接数和每路由最大连接数。...
例如,`ctx.request.url` 的获取是通过解析原生 Node.js 中的 `req.url` 实现的,这通常涉及到 `parseurl` 这个库的使用。`parseurl` 是一个高效的 URL 解析库,它可以快速地将请求的 URL 转换为结构化的对象,便于...
parseurl bs4 numpy 2. 使用模型 朴素贝叶斯分类器 实现:纯python实现 3. 数据来源 新闻共分7类,新闻信息在此采集: 1 财经 http://finance.qq.com/l/201108/scroll_17.htm 2 科技 ...
接下来,你可以创建一个`gofeed.Parser`实例,然后使用`ParseURL`或`ParseString`方法解析feed的URL或XML内容: ```go fp := gofeed.NewParser() feed, err := fp.ParseURL("http://example.com/rss") if err != ...
`ParseURL.h`同样会包含URL解析器的类或函数原型,用于声明解析URL所需的接口。 最后,`memlist.h`可能定义了一个内存列表或缓冲区管理的数据结构。在HTTP下载过程中,可能会使用这样的数据结构来存储接收到的数据...
pq.ParseURL for converting urls to connection strings for sql.Open. Many libpq compatible environment variables Unix socket support Notifications: LISTEN/NOTIFY 示例代码: package main import...
这里以`jar`命令为例,假设你需要将`com.util.ParseURL`这个类作为主入口类,可以执行如下命令来创建JAR文件: ```bash jar cvmf manifest.mf -C build/classes . TestDemo.jar ``` 这里`cvmf`分别代表`c`创建新...
本示例将深入探讨Java在网络编程中的应用,通过提供的四个源代码文件:SimpleServer.java、SimpleClient.java、ParseURL.java和URLConnectionReader.java,我们可以学习到几个关键的知识点。 1. **Socket编程**: ...
或者 Document modifiedDocument = DocumentHelper.parseURL(new URL(xmlFileUrl));找到要修改的元素,例如,将 article 的 level 属性从 "Intermediate" 更改为 "Introductory",日期从 "December-2001" 改为 ...
function parseUrl(url) { var a = document.createElement('a'); a.href = url; return { protocol: a.protocol.replace(':', ''), hostname: a.hostname, port: a.port, path: a.pathname, query: (() =>...
`java.net.URL`类提供了`parseURL()`方法,可以将字符串解析为URL对象,分解出各个组成部分。例如: ```java URL parsedUrl = URL.parseURL("http://user:pass@example.com:8080/path?query#fragment"); System....
此类的实现通常会依赖于Java的内置`java.net.URL`类,这个类提供了许多方法来操作URL,如`toExternalForm()`、`parseURL()`、`openConnection()`等。 在实际开发中,自定义`UrlUtil`类可以帮助代码规范化,提高...
function parseUrl(url) { var urlObj = new URL(url); // 获取协议 var protocol = urlObj.protocol; // 获取主机名 var hostname = urlObj.hostname; // 获取端口 var port = urlObj.port; // 获取...
这可以通过函数如`ParseURL`来完成。然后,使用HTTP协议创建一个请求句柄,例如`HttpOpenRequest`,指定GET方法以下载文件。在请求句柄中设置`AcceptTypes`为“*/*”,表示接受所有类型的文件。 接着,发送请求并...
- Url类可能有属性如urlString,方法如assembleUrl()和parseUrl()。 - CredentialStorage类可能含有属性如appIDPasswords,方法如getPasswordByAppID()。 3. 定义类与类之间的交互关系: 类之间通常通过方法调...