Javascript Chrome本地主机扩展XHR从未到达?

Javascript Chrome本地主机扩展XHR从未到达?,javascript,google-chrome-extension,xmlhttprequest,Javascript,Google Chrome Extension,Xmlhttprequest,我正在尝试编写一个chrome扩展,这是我第一次需要用它发布到服务器上。如果我向本地服务器发出邮递员请求https://localhost:80/savelink 我得到一个200,服务器会相应地运行。但是,当我尝试从chrome扩展触发请求时,服务器行为从未被触发。请求如下所示,仅对示例稍作修改: chrome.tabs.query(queryInfo, function(tabs) { var tab = tabs[0]; var url = tab.url

我正在尝试编写一个chrome扩展,这是我第一次需要用它发布到服务器上。如果我向本地服务器发出邮递员请求https://localhost:80/savelink 我得到一个200,服务器会相应地运行。但是,当我尝试从chrome扩展触发请求时,服务器行为从未被触发。请求如下所示,仅对示例稍作修改:

chrome.tabs.query(queryInfo, function(tabs) {
        var tab = tabs[0];

        var url = tab.url;


        console.assert(typeof url == 'string', 'tab.url should be a string');
        var request = new XMLHttpRequest();

        request.open("POST", 'https://localhost:80/savelink', true);
        request.setRequestHeader("Content-Type", "application/json;charset=UTF-8");
        request.send({ tab_url: url });
        console.log("HIT");
    });
我的manifest.json权限看起来像这样,你能看出我在胡闹吗

"permissions": [
"activeTab",
    "https://localhost/*",
    "https://*/",
    "http://*/"
  ]
我的服务器的相关部分如下所示:

app.use(function(req, res, next) {
  res.header("Access-Control-Allow-Origin", "*");
  res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
  next();
});

app.post('/savelink', function(req, res) {
    console.log(req.body);  // this log is never triggered when the route is hit through chrome
    res.sendStatus(200);
});

我正在运行设置了-禁用web安全标志的Chrome Canary。我仍然在客户端得到一个不安全的响应,但我认为这可能无关紧要

好吧,我明白了,谢谢你的评论,你们都走对了路。我确实需要运行open-googlechrome-Canary-args-user-data-dir-disable-web安全,但最重要的是,对服务器所做的任何更改都会重新启动它,而我忽略了它。这意味着,为了让我的呼叫正常工作,我需要导航到服务器上的路由,加载它,接受警告,然后打开分机并发送帖子。更改扩展意味着我必须这样做+重新加载扩展。对我回应的每个人都很抱歉,你们都是对的,我错过了一些步骤

我已经研究了许多类似的问题,但没有找到解决方案:您是否尝试查看XMLHttpRequest在错误中所说的内容?您是否在扩展页面的devtools网络面板中看到传出请求?以防万一:弹出页面和背景页面都有自己的devtool,而不是为网页显示的devtool。@epascarello错误只是说这是一个不安全的响应,因为我似乎无法让它实际禁用安全性,因为有一个自签名证书。。。。我认为标志是-忽略证书错误