我正在尝试使用javax.servlet.http.HttpServletRequest对象从以下URL获取控制器中的查询字符串参数:
它不起作用,因为它被#而不是?
,则可以正常工作有没有办法解决这个问题?我必须使用#selected查询参数。哪个属性将包含oauth-callback之后的数据?
答案 0 :(得分:2)
那些不是查询参数。它们是URI的片段 - 根本不会发送到服务器。它只能用于客户端。
来自RFC 3986:
片段标识符组件由数字符号("#")字符的存在表示,并以URI的结尾终止。
......和(强调我的)
片段标识符在信息检索中具有特殊作用 系统作为客户端间接引用的主要形式, 允许作者专门识别现有的方面 资源只由资源所有者间接提供。的作为 这样,片段标识符不用于特定于方案 处理URI;相反,片段标识符是分开的 来自解除引用之前的其余URI ,因此 识别片段本身内的信息被解除引用 完全由用户代理完成,无论URI方案如何。