
异步请求中 refrer 属性携带问题解析
在浏览器的上下文中,当页面 A 从页面 B 跳转而来时,页面 A 发起的异步请求通常会携带 referer 属性。该属性包含页面 B 的 URL,用于标识请求的来源。
影响携带的原因:
异步请求(例如 AJAX)在向服务器发送请求之前,会先从当前页面继承一些信息,包括 referer 属性。referer 属性记录了用户是从哪个页面跳转而来的,为服务器提供请求来源的上下文。
应对措施:
如果你不想让页面 A 发起的异步请求携带 referer 属性,可以使用以下方法:
第一种方案:使用元标记禁用 referer
在页面 A 的 HTML 头部添加以下元标记:
此元标记会指示浏览器在页面 A 发起的所有请求中都不要发送 referer 属性。
第二种方案:使用 window.open
使用 window.open 函数可以打开一个新窗口,该窗口不会携带来自打开页面的 referer 属性。代码示例:
window.open('javascript:window.name;','location.replace("' + 你的跳转 URL + '")');
此代码会打开一个新窗口,在该窗口中将页面 A 跳转到指定的 URL。
第三种方案:使用 iframe
还可以使用 iframe 来实现页面 A 不携带 referer 属性的跳转。代码示例:
document.body.appendChild(document.createElement('iframe')).src='javascript:"top.location.replace(\'' + 你的跳转 URL + '\')"';
此代码会创建一个 iframe,然后将页面 A 的位置替换为指定的 URL。
以上就是异步请求中如何避免携带 Referer 属性?的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1558916.html
微信扫一扫
支付宝扫一扫