0

我一直在尝试我能想到的一切以使请求正常工作,但总是被拒绝连接。curl 命令有效,但是在任何地方都没有这样的例子,你有一个用户名和密码,另一个标志加上数据。

这是我到目前为止所拥有的

const xhr = new XMLHttpRequest();

xhr.onload = () => {
    if (xhr.status >= 200 && xhr.status < 300) {

        const response = JSON.parse(xhr.responseText);
        console.log(response['result']);
    }
};

const json = { 
                "jsonrpc":"1.0",
                "method":"getbalance",
                "params":["*",1],
                "id":"1"
           };

xhr.open('POST', 'http://zfred:TXlTM2NydFBAc3N3b3Jk@127.0.0.1:8232/');
xhr.setRequestHeader('Access-Control-Allow-Origin', '*');
xhr.setRequestHeader('Content-Type', 'text/plain');
xhr.send("--data-binary",json);

我也尝试过添加

xhr.setRequestHeader("Authorization", "zfred:TXlTM2NydFBAc3N3b3Jk");
xhr.withCredentials = true;

似乎没有任何效果。我只是被拒绝连接。但是,此 curl 命令可以正常工作。

curl --user zfred:TXlTM2NydFBAc3N3b3Jk --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getbalance", "params": ["*", 1] }' -H 'content-type: text/plain;' http://127.0.0.1:8232/

任何帮助将不胜感激。

4

1 回答 1

0

尝试将withCredentials属性设置为true您的XMLHttpRequest.

于 2021-08-19T17:36:54.853 回答