我尝试从服务器获取信息,但如果想解析答案时出错。
我的代码:
const data = ["10093"]
const options = {
auth: userpsw,
method: 'GET',
CURLOPT_POSTFIELDS: data
};
const request = http.request(url, options, function(response) {
response.on("data", function(data){
console.log(JSON.parse(data));
})
})
答案:
undefined:1
<br />
^
SyntaxError: Unexpected token < in JSON at position 0
at JSON.parse (<anonymous>)
如果我不解析数据:
const request = http.request(url, options, function(response) {
response.on("data", function(data){
console.log(data);
然后我得到以下按摩:
Buffer 3c 62 72 20 2f 3e 0a 3c 62 3e 57 61 72 6e 69 6e 67 3c 2f 62 3e 3a 20 20 69 6d 70 6c 6f 64 65 28 29 3a 20 49 6e 76 61 6c 69 64 20 61 72 67 75 6d 65 6e ... 282 more bytes
我看不到什么?如何阅读答案?
答案 0 :(得分:0)
我建议使用请求模块而不是 HTTP :
var options = {
hostname: '_your_url',
port: 'your_port',
path: '/your_path',
method: 'GET',
json:true
}
request(options, function(error, response, body){
if(error) console.log(error);
else console.log(body);
});
答案 1 :(得分:0)
您的响应不是 JSON 格式,这就是您尝试解析响应时出错的原因,使用 try 和 catch 处理错误。