Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/404.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
javascript中的https post类似于带有标题和参数的curl-d;“请求”;模块节点npm_Javascript_Node.js_Http_Post_Npm - Fatal编程技术网

javascript中的https post类似于带有标题和参数的curl-d;“请求”;模块节点npm

javascript中的https post类似于带有标题和参数的curl-d;“请求”;模块节点npm,javascript,node.js,http,post,npm,Javascript,Node.js,Http,Post,Npm,我想在javascript请求中创建HTTP POST,就像下面的curl一样(传递一些参数)到Django服务器 curl -X POST --header 'Content-Type: application/x-www-form-urlencoded' --header 'Accept: application/json' -d 'token=Rh7JARH&param_id=2' 'http://localhost:8000/api/test/param_id' 下面是我创建j

我想在javascript请求中创建HTTP POST,就像下面的curl一样(传递一些参数)到Django服务器

curl -X POST --header 'Content-Type: application/x-www-form-urlencoded' --header 'Accept: application/json' -d 'token=Rh7JARH&param_id=2' 'http://localhost:8000/api/test/param_id'
下面是我创建javascript代码的尝试。请注意,我正在使用npm“请求”模块

但是令牌和参数id是一个问题,在它抱怨的服务器上

django.utils.datastructures.MultiValueDictKeyError: "'token'"

我想使用示例中的npm请求模块创建与javascript中相同的curl HTTP POST。我想我很接近了,它可能是jsonObject,您可以尝试用单引号替换jsonObject键值对的双引号

var jsonObject = {
"token": "@#@dasdas!#@$!#",
"param_id": 2   
};

下面的代码应该将所需的参数发布到服务器。我已经在自己的服务器上对此进行了测试,url编码的参数被正确解析:

const request = require('request');

const headers = {
    'Content-Type': 'application/x-www-form-urlencoded',
    'Accept': 'application/json'
};

const options = {
    url: 'http://localhost:8000/api/test/param_id',
    method: 'POST',
    headers: headers,
    body: 'token=Rh7JARH&param_id=2'
};

request(options, (error, response, body) => {
    if (error) {
        console.error("An error has occurred:", error);
    } else {
        console.log("Response:", body);
    }
});
const request = require('request');

const headers = {
    'Content-Type': 'application/x-www-form-urlencoded',
    'Accept': 'application/json'
};

const options = {
    url: 'http://localhost:8000/api/test/param_id',
    method: 'POST',
    headers: headers,
    body: 'token=Rh7JARH&param_id=2'
};

request(options, (error, response, body) => {
    if (error) {
        console.error("An error has occurred:", error);
    } else {
        console.log("Response:", body);
    }
});