如何在javascript中写http请求?

How to write http request in javascript?

我知道可以做到,但我对 http 请求一点都不擅长。我有一个非常具体的我需要写。代码在这里,但我不知道要 return 到我的应用程序的哪一行进行响应。

    var request = new XMLHttpRequest();

request.open('POST', 'https://v2.api.xapo.com/oauth2/token');

request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
request.setRequestHeader('Authorization', 'Basic YTVlMGExMTViYTc1MThjYzphNWUwYTExNWJhNzUxOGNjYTVlMGExMTViYTc1MThjYw==');

request.onreadystatechange = function () {
  if (this.readyState === 4) {
    console.log('Status:', this.status);
    console.log('Headers:', this.getAllResponseHeaders());
    console.log('Body:', this.responseText);
  }
};

var body = "grant_type=client_credentials&redirect_uri=https://myURI.com";

request.send(body);

这就是我想要做的。

curl --include --request POST --header "Content-Type: application/x-www-form-urlencoded" --header "Authorization: Basic MYKEYHERE[auth]" --data-binary "grant_type=client_credentials&redirect_uri=MYREDIRECTURI" 'https://v2.api.xapo.com/oauth2/token'

这个api是here

请看下面的代码:

  function loadDoc() {
      var xhttp = new XMLHttpRequest();
      xhttp.onreadystatechange = function() {
        if (xhttp.readyState == 4 && xhttp.status == 200) {
          document.getElementById("demo").innerHTML = xhttp.responseText;
        }
      };
      xhttp.open("POST", "demo_get2.asp?fname=Henry&lname=Ford", true);
      xhttp.send();
    }

首先你定义了一个XMLHttpRequest()的实例,它将为你做http请求

second 方法 xhttp.onreadystatechange = function() 将监听状态变化,这意味着它会在返回 http 响应后执行

third xhttp.open 方法将确定您的连接配置,例如这里我们设置 属性 "POST" 然后确定 link 你想要 post 它连同你想要 post 的变量,像这样:

  1. 输入link
  2. 放?标记
  3. 输入变量名
  4. 放=
  5. 输入变量值
  6. 如果你想 post 更多变量,请放置并标记并重复步骤 3 4 5 否则什么都不放。

第四方法xhttp.send()将启动对服务器的http请求,一旦得到响应,xhttp.onreadystatechange = function()将被调用然后你可以得到响应内容 xhttp.responseText

我希望这个例子很清楚