javascript:使用URL类时出现问题 我试图解析URL并获取其组件,如协议、主机名、端口,我猜URL类就是为此而设计的。 但有一件事我不明白: 解析一个URL,如'ftps://example.com:22'不起作用。 这里有一个简单的测试 url = new URL("ftps://example.com:22"); console.log(url);
这就是我在控制台里看到的javascript:使用URL类时出现问题 我试图解析URL并获取其组件,如协议、主机名、端口,我猜URL类就是为此而设计的。 但有一件事我不明白: 解析一个URL,如'ftps://example.com:22'不起作用。 这里有一个简单的测试 url = new URL("ftps://example.com:22"); console.log(url);,javascript,url,Javascript,Url,这就是我在控制台里看到的 [object URL] { hash: "", host: "", hostname: "", href: "ftps://example.com:22", origin: "null", password: "", pathname: "//example.com:22", port: "", protoco
[object URL] {
hash: "",
host: "",
hostname: "",
href: "ftps://example.com:22",
origin: "null",
password: "",
pathname: "//example.com:22",
port: "",
protocol: "ftps:",
...
可以看出,“主机名”甚至“端口”都是空的。如果我对
http://example.com:22
一切正常,“主机名”和“端口”的值正确
这是我测试过的一个
我做错了什么?URL类是否不适合使用?非常感谢您提供的任何启示我认为URL构造函数只识别ftp://URL而不是ftps://通过查看URL的方案/主机组合表,不允许使用“ftps”方案。但是,允许使用“ftp”,因此您可以使用它 我还尝试使用to中描述的
a
元素解析URL,但结果是一样的。“ftps”不起作用,但“ftp”起作用
因此,最简单的方法可能是使用“ftp”解析它并获取所需的值,或者手动进行解析。感谢您链接其他答案。我在那里找到了一些可以完成这项工作的regexp。