页面 A
包含执行 XMLHttpRequest
的 javascripts 函数。页面 A
在 iframe 中加载页面 B
。页面 B
执行 parent.makeRequest()
函数,后者又执行 XHR
请求。我希望 XHR
请求的 referrer/origin 是页面 B
,但它是页面 A
。有什么办法可以解决这个问题吗?
最佳答案
您无法控制 Referer
header 的值。
在使用 setRequestHeader
发出 XHR 请求时,可以调整一些 HTTP header 。方法。但是,Referer
header 被明确排除在外。从规范:
The above headers [including
Referer
] are controlled by the user agent to let it control those aspects of transport. This guarantees data integrity to some extent.
但是,您可以设置自定义 header 。例如,如果这适合您的应用程序,您可以使用 X-Referer
:
xhr.setRequestHeader('X-Referer', location.href);
关于javascript - XMLHttpRequest 引荐来源网址和 iframe,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5911958/