栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

从URI获取anchor

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

从URI获取anchor

这是不可能的,因为客户端不会将“锚定部分”发送到服务器

例如,这是Chrome提交后生成的确切请求

http://example.com/#foobar
(使用Wireshark记录):

GET / HTTP/1.1Host: example.comConnection: keep-aliveUser-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US) AppleWebKit/532.3 (KHTML, like Gecko) Chrome/4.0.223.11 Safari/532.3Cache-Control: max-age=0Accept: application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5Accept-Encoding: gzip,deflateAccept-Language: en-US,en;q=0.8Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3If-None-Match: "b300b4-1b6-4059a80bfd280"If-Modified-Since: Tue, 15 Nov 2005 13:24:10 GMT

看,没有#foobar。因此,服务器应用程序无法读取它。

您可以做一些Javascript魔术,将锚点存储在cookie或隐藏的输入字段或任何您喜欢的伏都教中。但是,对于不是来自您自己站点的请求,它将永远无法工作。在服务器上将查询字符串中的任何内容作为必需,并且仅将锚仅用于仅Javascript的任务,或者将其用于在简单的HTML文档中导航,这比较简单,但这就是90年代;)。

这是提到的RFC 1808中的重要部分:

请注意,片段标识符(及其前面的“#”)不被视为URL的一部分。但是,由于它通常在与URL相同的字符串上下文中使用,因此解析器必须能够识别存在的片段,并将其放在一边作为解析过程的一部分。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/369814.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号