我们的前端人员需要形成一个包含哈希值的网址(即http:// blah /#some-link.)当我们在浏览器上点击这个并使用fiddler检查http流量时,我们看到了所有内容之后的等等/被删除,所以请求实际上只是http:// blah /.我们还在我们的服务器eclipse调试日志中确认了这一点.
Spring安全性将请求重定向到正确的登录页面(因为用户尚未登录),但浏览器上的url现在显示: http:// blah/some-link (散列被删除)但是url on浏览器应该是http:// blah/log-in.
知道为什么会这样吗?任何修复或解决方法?提前致谢.
#根据 HTTP 规范,之后的内容仅在客户端使用。如果您在服务器上需要该信息,您可以使用不同的分隔符,或者您可以在页面加载后通过在客户端使用 javascript 读取它通过 ajax 提交它。
后面的URI部分#称为fragment:
URI = scheme ":" hier-part [ "?" query ] [ "#" fragment ]
Scheme和hier-part标识文档的位置,片段帮助浏览器识别该文档中的位置.
片段在作为请求的一部分发送之前由客户端软件从URI中剥离.
来自RFC3986:
片段标识符不用于
URI 的特定于方案的处理; 相反,片段标识符
在解除引用之前与URI的其余部分分开,因此
片段本身内的识别信息
仅由用户代理解除引用,而不管URI方案如何.虽然
这种单独处理通常被认为是
信息丢失,特别是随着
资源随时间推移而对参考文献进行精确重定向,但它也有助于防止信息
提供者拒绝参考作者
有选择地引用资源内的信息.
| 归档时间: |
|
| 查看次数: |
2666 次 |
| 最近记录: |