问题标签 [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.
parsing - 是否允许将未编码的等于字符 (=) 作为查询字符串的值?
可以说我有以下网址:
“baz”和“egg”之间是一个等号。"baz=egg" 算作 key2 的值还是必须对 = 进行编码?
谢谢
php - get 或 basename() 更有效吗?
以下哪个更有效?
在令牌(随机)上使用 get 函数,例如:
http://www.example.com/category/subcategory/subsubcategory?value=random $_GET['value']
使令牌成为 URL 的一部分并解析它,例如:
$url="http://www.example.com/category/subcategory/subsubcategory/random" basename($url)
实际上,basename 是否比使用 explode 或substr(strrchr())
?
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://
javascript - 将 URL 分解为其组件
我正在使用 javascript,并希望获取我拥有的 URL 字符串并将其分解为其组件,例如主机、路径和查询参数。
我需要这样做以获取其中一个查询参数,它本身就是一个 URL,因此被编码在原始 URL 字符串中。
我觉得应该有一种简单的方法可以在 Javascript 中做到这一点。也许看起来像这样:
javascript - 拆分路径名以获取路由参数
我在我的应用程序中使用 mvc 和 jquery 我有这样的路由 url:
我想获取 URL 并将其拆分以获取 jquery 中的 id
php - 使用 http get 将表单数据发布到两个 url
请帮忙,我有一个简单的网络表单,当按下提交按钮时,我希望表单将数据发布到两个 URL,同时立即重定向到其中一个。
这是我在表单提交后在 php 重定向页面上设置的内容。如何添加第二个 URL 并成功重定向到其中一个?
javascript - 在 JavaScript 中解析 URL
我需要在 JavaScript 中解析 url。
这是我的代码:
不幸的是,它只适用于第一name=value
对。
如何更正我的代码?
javascript - Firefox 中的 window.location.hash 问题
考虑以下代码:
使用以下哈希运行时:
#car=城镇%20%26%20国家
Chrome和Safari中的结果将是:
汽车=城镇%20%26%20国家
但在Firefox(Mac 和 PC)中将是:
汽车=城镇和乡村
因为我使用相同的代码来解析查询和哈希参数:
Firefox 的特质在这里打破了它:汽车参数最终是“城镇”,而不是国家。
有没有一种安全的方法来解析跨浏览器的哈希参数,或者修复 Firefox 读取它们的方式?
注意:此问题仅限于 Firefox 对 HASH 参数的解析。使用查询字符串运行相同的测试时:
所有浏览器都会显示:
汽车=城镇%20%26%20国家
javascript - 如何将 URL 参数转换为 JavaScript 对象?
我有一个这样的字符串:
我怎样才能将它转换成这样的 JavaScript 对象?
ruby-on-rails - 指向用户指定 url 的链接被解释为相对 url
抱歉,如果这个问题已在其他地方得到解答,但我花了一段时间寻找没有运气。
在我的网络应用程序中,我要求用户指定他们博客的网址。但是,他们并不总是将“http://”放在这些网址的开头。在网站的其他地方,当我链接到这些 url 时,浏览器会将它们解释为相对 url。例如,如果用户写 bobsblog.wordpress.com,链接将转到http://www.mydomain.com/bobsblog.wordpress.com。
一种解决方案是使用“http://”预填充 url 字段。
但更好的解决方案是解析 url 并在用户没有的情况下添加方案。Rails 是否提供了一个很好的方法来做到这一点?我查看了函数 URI::parse,但它似乎并没有提供这样做的好方法。