Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/90.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html URL哈希格式,什么';允许什么';不是吗?_Html_Url_Browser - Fatal编程技术网

Html URL哈希格式,什么';允许什么';不是吗?

Html URL哈希格式,什么';允许什么';不是吗?,html,url,browser,Html,Url,Browser,我在我的富web应用程序中使用基于哈希的导航。我还发现我需要创建指向单个资源实例的永久链接,但由于我无法使页面刷新,并且主页是从单个路径“/”加载的,因此我无法使用真正的URL。相反,我考虑使用哈希。让我给你举个例子,因为我知道上面的解释很糟糕 所以,我会选择 这似乎还可以,而且浏览器认为“#path/to/resource/1”是一个散列(我认为允许使用斜杠),但我想知道URL散列中允许哪些字符。是否有一个规范或RFC,我可以阅读,以了解当涉及哈希时浏览器的标准行为是什么 编辑:好吧,我真傻。

我在我的富web应用程序中使用基于哈希的导航。我还发现我需要创建指向单个资源实例的永久链接,但由于我无法使页面刷新,并且主页是从单个路径“/”加载的,因此我无法使用真正的URL。相反,我考虑使用哈希。让我给你举个例子,因为我知道上面的解释很糟糕

所以,我会选择

这似乎还可以,而且浏览器认为“#path/to/resource/1”是一个散列(我认为允许使用斜杠),但我想知道URL散列中允许哪些字符。是否有一个规范或RFC,我可以阅读,以了解当涉及哈希时浏览器的标准行为是什么

编辑:好吧,我真傻。实际上没有检查斜杠是否在所有浏览器中都有效。Chrome显然不喜欢它们。仅适用于FF。

查看:或

基本上,您可以使用任何可以在URL中编码的内容


注意:可能存在浏览器不一致。如果您害怕它们,您可以使用序列化机制,比如将字符串转换为十六进制或其他形式(虽然会长两倍),或者使用某种id。

应该会有所帮助。允许使用斜杠,但不同浏览器的词法分析可能不同。

我想您可能会发现这很有用:


如果使用PHP生成页面路径,还可以生成一个有效URL。

实际上并没有检查斜杠是否在所有浏览器中都有效。Chrome显然不喜欢它们。仅适用于FF。
-嗯,我在Chrome或任何浏览器上都没有遇到任何问题。@Wesley:不知道,我开始使用它们是因为FF 3.6同意这是个好主意。然后我在Chrome上进行了测试,它的表现不同。我用JavaScript做所有事情。这就是为什么我需要散列而不是常规URL。是的,Chrome肯定不认为斜杠是散列的一部分,所以我改为破折号。不过,谢谢你的链接。