简体   繁体   中英

How do I send an HTTP GET request from a Chrome extension?

I'm working on a chrome extension that sends an HTTP request using the method GET.

How do I send at www.example.com the parameter par with value 0 ?

www.example.com?par=0

(the server reads the parameter par and does some stuff)

I found this article, talking about Cross-Origin XMLHttpRequest . But I don't know how their example could help me.

First, you'll need to edit your manifest.json and add the permission for www.example.com :

{
    "name": "My extension",
    ...
    "permissions": [
        "http://www.example.com/*"
    ],
    ...
}

Then in your background page (or somewhere else) you can do:

fetch('http://www.example.com?par=0').then(r => r.text()).then(result => {
    // Result now contains the response text, do what you want...
})

Old (ES5) version using XMLHttpRequest :

function callback() {
    if (xhr.readyState === XMLHttpRequest.DONE) {
        if (xhr.status === 200) {
            result = xhr.responseText;
            // ...
        }
    }
};

var xhr = new XMLHttpRequest();
xhr.open("GET", "http://www.example.com?par=0", true);
xhr.onreadystatechange = callback;
xhr.send();

For more information on this topic, see the relative documentation page .

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM