问题标签 [url-parsing]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
139 浏览

parsing - 是否允许将未编码的等于字符 (=) 作为查询字符串的值?

可以说我有以下网址:

“baz”和“egg”之间是一个等号。"baz=egg" 算作 key2 的值​​还是必须对 = 进行编码?

谢谢

0 投票
3 回答
478 浏览

php - get 或 basename() 更有效吗?

以下哪个更有效?

  1. 在令牌(随机)上使用 get 函数,例如:

    http://www.example.com/category/subcategory/subsubcategory?value=random $_GET['value']

  2. 使令牌成为 URL 的一部分并解析它,例如:

    $url="http://www.example.com/category/subcategory/subsubcategory/random" basename($url)

实际上,basename 是否比使用 explode 或substr(strrchr())?

0 投票
6 回答
15588 浏览

python - 必要时如何将“http://”协议添加到 url?

我需要解析一个 URL。我目前正在使用 urlparse.urlparse() 和 urlparse.urlsplit()。

问题是当它不存在方案时,我无法从 URL 获取“netloc”(主机)。我的意思是,如果我有以下网址:

www.amazon.com/Programming-Python-Mark-Lutz/dp/0596158106/ref=sr_1_1?ie=UTF8&qid=1308060974&sr=8-1

我无法获取 netloc:www.amazon.com

根据python文档:

遵循 RFC 1808 中的语法规范,urlparse 只有当它被 '//' 正确引入时才能识别它。否则,输入被假定为相对 URL,因此以路径组件开始。

所以,这是故意的。但是,我仍然不知道如何从该 URL 获取 netloc。

我想我可以检查该方案是否存在,如果不存在,则添加它,然后解析它。但是这个解决方案似乎并不是很好。

你有更好的主意吗?

编辑: 感谢所有的答案。但是,我不能做 Corey 和其他人提出的“startswith”事情。因为,如果我得到一个带有其他协议/方案的 URL,我会把它搞砸。看:

如果我得到这个网址:

使用建议的代码,我将在开头添加“http://”并将其搞砸。

我找到的解决方案

需要注意的一点:

我先做一些验证,如果没有给出方案,我认为它是 http://

0 投票
4 回答
22416 浏览

javascript - 将 URL 分解为其组件

我正在使用 javascript,并希望获取我拥有的 URL 字符串并将其分解为其组件,例如主机、路径和查询参数。

我需要这样做以获取其中一个查询参数,它本身就是一个 URL,因此被编码在原始 URL 字符串中。

我觉得应该有一种简单的方法可以在 Javascript 中做到这一点。也许看起来像这样:

0 投票
2 回答
15819 浏览

javascript - 拆分路径名以获取路由参数

我在我的应用程序中使用 mvc 和 jquery 我有这样的路由 url:

我想获取 URL 并将其拆分以获取 jquery 中的 id

0 投票
1 回答
632 浏览

php - 使用 http get 将表单数据发布到两个 url

请帮忙,我有一个简单的网络表单,当按下提交按钮时,我希望表单将数据发布到两个 URL,同时立即重定向到其中一个。

这是我在表单提交后在 php 重定向页面上设置的内容。如何添加第二个 URL 并成功重定向到其中一个?

0 投票
3 回答
1207 浏览

javascript - 在 JavaScript 中解析 URL

我需要在 JavaScript 中解析 url。

这是我的代码:

不幸的是,它只适用于第一name=value对。

如何更正我的代码?

0 投票
2 回答
5447 浏览

javascript - Firefox 中的 window.location.hash 问题

考虑以下代码:

使用以下哈希运行时:

#car=城镇%20%26%20国家

ChromeSafari中的结果将是:

汽车=城镇%20%26%20国家

但在Firefox(Mac 和 PC)中将是:

汽车=城镇和乡村

因为我使用相同的代码来解析查询和哈希参数:

Firefox 的特质在这里打破了它:汽车参数最终是“城镇”,而不是国家。

有没有一种安全的方法来解析跨浏览器的哈希参数,或者修复 Firefox 读取它们的方式?


注意:此问题仅限于 Firefox 对 HASH 参数的解析。使用查询字符串运行相同的测试时:

所有浏览器都会显示:

汽车=城镇%20%26%20国家

0 投票
34 回答
322533 浏览

javascript - 如何将 URL 参数转换为 JavaScript 对象?

我有一个这样的字符串:

我怎样才能将它转换成这样的 JavaScript 对象?

0 投票
2 回答
217 浏览

ruby-on-rails - 指向用户指定 url 的链接被解释为相对 url

抱歉,如果这个问题已在其他地方得到解答,但我花了一段时间寻找没有运气。

在我的网络应用程序中,我要求用户指定他们博客的网址。但是,他们并不总是将“http://”放在这些网址的开头。在网站的其他地方,当我链接到这些 url 时,浏览器会将它们解释为相对 url。例如,如果用户写 bobsblog.wordpress.com,链接将转到http://www.mydomain.com/bobsblog.wordpress.com

一种解决方案是使用“http://”预填充 url 字段。

但更好的解决方案是解析 url 并在用户没有的情况下添加方案。Rails 是否提供了一个很好的方法来做到这一点?我查看了函数 URI::parse,但它似乎并没有提供这样做的好方法。