如何在Javaservlet中读取html锚?

如何在Javaservlet中读取html锚?,java,html,Java,Html,我需要从请求中获取所有参数,包括“#”之后的参数。 例子: 请求: 我需要我的服务器获取“#”之后的所有参数,因为它们在哪里 我该怎么做? 10倍, Koby记住,锚是客户端的概念,因此不应该在服务器端使用锚。客户端不会将锚定数据发送到服务器,因此您无法执行此操作。最好使用get参数。请求资源时,客户端不会将中提到的锚或URL片段发送到服务器。其基本原理是,片段URL用于标识资源中的位置,而不是服务器上的其他资源。为了识别资源中的位置,客户机需要从服务器获取完整的资源,这个过程不需要涉及有关片段

我需要从请求中获取所有参数,包括“#”之后的参数。 例子: 请求: 我需要我的服务器获取“#”之后的所有参数,因为它们在哪里 我该怎么做? 10倍,
Koby

记住,锚是客户端的概念,因此不应该在服务器端使用锚。客户端不会将锚定数据发送到服务器,因此您无法执行此操作。最好使用get参数。

请求资源时,客户端不会将中提到的锚或URL片段发送到服务器。其基本原理是,片段URL用于标识资源中的位置,而不是服务器上的其他资源。为了识别资源中的位置,客户机需要从服务器获取完整的资源,这个过程不需要涉及有关片段的信息传输(因为它对服务器没有任何意义)

如果您确实希望使用包含片段的URL通过查询字符串提交信息,则必须确保查询字符串位于URL片段之前。如果您自己构造请求,这可能是客户端代码中的错误。如果您有能力,请将请求构造逻辑留给浏览器

如果确实希望将片段字符(#)发送到服务器,则需要在查询字符串中对其进行编码,否则客户端(浏览器)将在向服务器发送请求时忽略URL的该部分

关于SO的相关问题

  • 你不能这样做。报告说:

    对文档特定部分的引用(包括片段标识符)可能如下所示

    http://www.myu.edu/org/admin/people#andy
    
    在这种情况下,字符串“#andy”不会发送到服务器,而是 由客户机保留,并在完成整个对象时使用 找回了


    request.getRequestURI()返回“m”,而不包含q=abc请求。getQueryString()返回null…您确定它没有发送到服务器吗?有相关文件吗?如果这是肯定的,我可以在javascript上重定向并用“?”替换“#”,但我更喜欢不重定向(出于搜索引擎优化的原因)。我很好奇当你为一个站点添加书签时的情况,比如说:然后xyz.com重定向到一个SSO站点,在那里用户登录并将被重定向到,因为#片段从未发送到SSO服务(它可能在查询字符串或POST参数中接收到类似requestingApp=http%3A%2F%2Fxyz.com的内容)是的,你失去了锚。对此你无能为力。