尝试从node.js到Django执行POST请求

时间:2015-04-21 01:52:10

标签: javascript python django node.js

我正在尝试使用一些数据向我的Django脚本发出POST请求。它只是内部使用的东西,因此安全性不是问题,但它似乎不想打印任何东西。它打印“TEST”,所以我知道正在接收的帖子请求,但是根据Django文档,HttpRequest.POST应该打印POST数据的字典。

Django的

 @csrf_exempt
    def botdeposit(request):
        if request.method == 'GET':
            print(HttpRequest.GET)
            return redirect('/')
        elif request.method == 'POST':
            print('TEST')
            print(HttpRequest.POST)
            return redirect('/')

的node.js

var request = require('request');

// Set the headers
var headers = {
    'User-Agent':       'Super Agent/0.0.1',
    'Content-Type':     'application/x-www-form-urlencoded'
}

// Configure the request
var options = {
    url: 'http://127.0.0.1:8000/test',
    method: 'POST',
    headers: headers,
    form: {'key1': 'xxx', 'key2': 'yyy'}
}

// Start the request
request(options, function (error, response, body) {
    if (!error && response.statusCode == 200) {
        // Print out the response body
        console.log(body)
    }
    console.log(body);
})

1 个答案:

答案 0 :(得分:2)

request.POST会。 HttpRequest是一个类,你有它的实例。就像文档说HttpRequest.method是一件事,但你写request.method

(是的,文档令人困惑,并没有很好地显示类和实例值之间的差异。)