gpt4 book ai didi

javascript - Chrome 扩展 : how to change origin in AJAX request header?

转载 作者:数据小太阳 更新时间:2023-10-29 05:19:09 25 4
gpt4 key购买 nike

我正在尝试在 ajax 请求 header 中手动设置来源。在我的 background.js 中,我有这个

var ajaxResponse;
$.ajax({
type:'POST',
url:'www.somewebsite.com/login/login.asp',
headers:{
'origin': 'https://www.somewebsite.com'
},
success: function(response){
ajaxResponse = response;
}
});

如您所见,原点已更改。但是当这个 Chrome 扩展被执行时,源被覆盖到 chrome-extension://iphajdjhoofhlpldiilkujgommcolacc 并且控制台给出错误 'Refused to set unsafe header "origin"'

我遵循了 Chrome API ( http://developer.chrome.com/extensions/xhr.html ),并且已经设置了如下权限

"permissions": [
"https://www.somewebsite.com/*"
],

有谁知道如何在 header 中正确设置原点?谢谢!

最佳答案

您可能误解了 the docs :
扩展程序可以请求访问其来源之外的远程服务器

这意味着扩展可以将请求发送到远程服务器(即浏览器本身不会像普通网页的 JS 那样阻止请求)。
意味着允许扩展随请求一起发送任意 header ,也不意味着远程服务器将响应请求。


因此,如果是远程服务器,则需要为Origin指定一个特定的值 header ,那么您无能为力,因为根据 the specs 您不能设置 Origin header (此限制也适用于扩展)。

关于javascript - Chrome 扩展 : how to change origin in AJAX request header?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20864629/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com