如何在JavaScript中从POST API返回JSON响应

时间:2017-09-04 11:16:34

标签: javascript json api

我在Django中创建了一个API,您在URL中键入一个变量并生成JSON响应。

例如,我们有这个网址:

  

http://127.0.0.1:8000/api/string/IAMNEWTOJAVASCRIPT

JSON响应是:

{"id": 1, "string": "iamnewtojavascript"}

如何在JavaScript中返回此JSON。我在网上搜索过,但结果都没有给我一个满意的答案。

在Python中,代码就是这么简单:

import requests
import json

url = "http://127.0.0.1:8000/api/string/IAMNEWTOJAVASCRIPT"

req = requests.post(url)
p = req.json()
data = json.dumps(p)
print(data)

1 个答案:

答案 0 :(得分:0)

在JavaScript中,您使用' XMLHttpRequest'为了那个原因。看看here

示例:

var objectToSend = {
    id: "1",
    string: "iamnewtojavascript"
};

var request = new XMLHttpRequest();

// callback function for readyState
request.onreadystatechange = function( ){
    if( this.readyState == 4 && this.status == 200 )    // check if request has completed, and check if server response is valid 
        alert( this.responseText ) // alert received anwser from server
}

// open connection to server
request.open("POST", /* URL GOES HERE */, true );
// send "objectToSend"
request.send( JSON.stringify( objectToSend ) );

如何对服务器执行POST请求。 HTTP-Post-Request用于在服务器上创建数据。

但我认为你想要使用的是HTTP-Get-Request。为此,只需将request.open("POST", ... )更改为request.open("GET", 'url', true );,然后在没有参数的情况下调用request.send()

有关HTTP-Post-Request和HTTP-Get-Request之间差异的说明,请参阅this