试图发布api请求

时间:2015-09-09 14:31:13

标签: node.js http-post

我在对外部网站进行API调用时遇到问题。

我需要向http://api.turfgame.com/v4/users发送POST请求,标题为Content-type:application / js。但是当我运行这段代码时,它只会加载而不再是。

var request = require('request');

    var options = {
        uri: 'http://api.turfgame.com/v4/users',
        method: 'POST',
        headers: {
            'Content-Type': 'application/json'
        },
        body: {
            "name": "username"
        }
    };

    request(options, function (error, response, body) {
        if (!error && response.statusCode == 200) {
             res.send(response.body);
        }
});

身体需要张贴在json formate [{'name':'username'}]中。

有人可以告诉我我做错了吗?

1 个答案:

答案 0 :(得分:1)

有一些问题:

  • “options”对象中的address属性应该不是“url” “uri”
  • 您可以使用“json”属性代替body
  • “res”未在您的响应处理函数中定义
  • 如果您希望主体成为数组,则需要用方括号
  • 包围

这是一个只记录响应的工作示例:

var request = require('request');

    var options = {
        url: 'http://api.turfgame.com/v4/users',
        method: 'POST',
        headers: {
            'Content-Type': 'application/json'
        },
        json: [{
            "name": "username"
        }]
    };

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