// ==UserScript==
// @name GM_XHR Example
// @grant GM.xmlHttpRequest
// @match *://*/*?testing_XMLRes_expose
// @connect httpbin.org
// ==/UserScript==
(async () => {
try {
const response = await GM.xmlHttpRequest({
method: "GET",
url: "https://httpbin.org/get",
headers: {
"Accept": "application/json"
},
onload: (res) => {
console.log("XMLRes_constructor", res.constructor);
console.log("XMLRes___proto__", res.__proto__);
console.log("XMLRes_expose", Object.getOwnPropertyDescriptors(res) );
console.log("Status:", res.status);
console.log("Response:", res.responseText);
}
});
} catch (e) {
console.error("Request failed", e);
}
})();