繁体   English   中英

JSON请求适用于Javascript,但不适用于Node.js(状态代码:403)

[英]JSON Request works in Javascript but not in Nodejs (statusCode: 403)

我想在NodeJS中请求一个简单的JSON文件。 使用Javascript和jQuery,它就像一个魅力:

$(document).ready(function() {
  $.getJSON('https://www.younow.com/php/api/broadcast/info/curId=0/user=Peter', function(json) {
      if (json["errorCode"] > 0) {
        console.log("Offline");
        $('#ampel').addClass('red');
      } else {
        console.log("Online");
        $('#ampel').addClass('green');
      }
  });
})

但是我无法使其与NodeJS一起使用:

var request = require('request');

var options = {
  url: 'https://www.younow.com/php/api/broadcast/info/curId=0/user=Peter',
  headers: {
    'content-type': 'application/javascript'
  }
};

function callback(error, response, body) {
  console.log(response.statusCode);
}

request(options, callback);

StatusCode始终为403,我无法处理数据。 有人可以帮助我,让我得到与jQuery相同的结果吗?

谢谢!

在Mike McCaughan的帮助下,我能够找到解决方案:

我必须发送其他用户代理才能获得200响应。 现在的代码如下所示:

var options = {
  url: 'https://www.younow.com/php/api/broadcast/info/curId=0/user=',
  headers: {
    'User-Agent': 'request'
  }
};

function callback(error, response, body) {
  var str = JSON.parse(body);
  if (str.errorCode > 0) {
    ...
  } else {
    ...
  }
}

request(options, callback);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM