如何从Chrome扩展程序向api发出http请求

时间:2019-01-26 02:38:52

标签: google-chrome-extension xmlhttprequest

我正在使用Chrome扩展程序进行一些测试,因此无法向我的API发出简单的get请求。我的API返回一个json,当扩展程序收到响应时,应控制台记录该响应。

在manifest.json中,我具有以下权限:

  "permissions": [
    "https://*/"
  ],

在我的background.js中,我有这个

var xhr = new XMLHttpRequest();
xhr.open("GET", "https//localhost:5001/api/values", true);

xhr.onreadystatechange = function () {
    console.log(xhr);
    if (xhr.readyState == 4) {
        console.log(xhr.responseText);
    }
}
xhr.send();

执行此代码后,我在浏览器的控制台窗口中收到此消息 GET chrome-extension://cajbfgbekfaohncbcejeobaamefgfebd/https//localhost:5001/api/values net::ERR_FILE_NOT_FOUND

我的猜测是,请求中包含chrome-extension://cajbfgbekfaohncbcejeobaamefgfebd,这就是导致问题的原因。但是即使是这样,我也不知道如何解决。

1 个答案:

答案 0 :(得分:0)

是的,这里没什么特别的,问题是@wOxxOm指出的错字。