在js中使用节点GET 400(错误请求)

时间:2013-11-17 07:41:20

标签: javascript node.js twitter response

我有这个js

    var https = require('https');

    var contador =process.argv[2]?process.argv[2]:'...';
    var screen_name =process.argv[3]?process.argv[3]:'...';
    var user_id =process.argv[4]?process.argv[4]:'...';

    var options = {
        host: 'api.twitter.com',
        path: '/1.1/followers/ids.json/count/'+contador+'/screen_name/'+screen_name+'/user_id/'+user_id,
        method: 'GET'
    };
var req = https.request(options, function(res) {
    console.log('Response is '+res.statusCode);
                         res.setEncoding('utf8');
                         res.on('data', function (datos_JSON) {
                                 var datos=JSON.parse(datos_JSON);
                 });

 });

req.end();

我得到以下错误,回复400,为什么?...

1 个答案:

答案 0 :(得分:0)

你有很多问题:

  1. 文档说明需要提供user_name或screen_name,而不是两者。
  2. 这些东西将作为查询字符串参数提供,而不是路径参数
  3. 您需要先进行身份验证。 Twitter API未打开,您通常需要代表经过身份验证的用户(尽管还有Application auth可用)。
  4. 以下是文档中的示例网址:https://api.twitter.com/1.1/followers/ids.json?cursor=-1&screen_name=sitestreams&count=5000