在 Chrome 应用程序中设置 XHR header 'Referer'
Setting XHR header 'Referer' in Chrome app
我想在我的 Chrome 应用程序中设置 header 'Referer'。
当我这样做时:
xhr.setRequestHeader('Referer', 'http://example.com/');
错误显示:
ajax.js:15 Refused to set unsafe header "Referer"
我在这里发现了一个旧主题,其中有人使用 chrome.webRequest 修改了 'Referer',但此扩展现在在 Chrome 应用程序中不可用。
Chrome.webRequest 不再有效了! SO 上的所有主题都推荐使用它,但 chrome. 不再支持它
如何更改此 header?
虽然 API 不适用于 Chrome 应用程序自己的请求,<webview>
has a request
interface 实现了 webRequest
并允许您修改来自它的请求。
通过这种方式,您可以创建一个 "proxy" 页面来为您执行 XHR,将其嵌入到网络视图中,并修改其请求。这是一个额外的箍,但至少它是可能的。
web-server-chrome includes a ChromeSocketXMLHttpRequest 对象。
你可以在你的项目中使用它。您可以克隆存储库和 运行 minimize.sh 以获得最小化的单个文件,以包含在您的项目中。然后,您可以使用 ChromeSocketXMLHttpRequest 作为普通 XHR
的替代品
我想在我的 Chrome 应用程序中设置 header 'Referer'。 当我这样做时:
xhr.setRequestHeader('Referer', 'http://example.com/');
错误显示:
ajax.js:15 Refused to set unsafe header "Referer"
我在这里发现了一个旧主题,其中有人使用 chrome.webRequest 修改了 'Referer',但此扩展现在在 Chrome 应用程序中不可用。 Chrome.webRequest 不再有效了! SO 上的所有主题都推荐使用它,但 chrome. 不再支持它 如何更改此 header?
虽然 API 不适用于 Chrome 应用程序自己的请求,<webview>
has a request
interface 实现了 webRequest
并允许您修改来自它的请求。
通过这种方式,您可以创建一个 "proxy" 页面来为您执行 XHR,将其嵌入到网络视图中,并修改其请求。这是一个额外的箍,但至少它是可能的。
web-server-chrome includes a ChromeSocketXMLHttpRequest 对象。 你可以在你的项目中使用它。您可以克隆存储库和 运行 minimize.sh 以获得最小化的单个文件,以包含在您的项目中。然后,您可以使用 ChromeSocketXMLHttpRequest 作为普通 XHR
的替代品