繁体   English   中英

请求js库JSON输入意外结束

[英]Request js library Unexpected end of JSON input

我在node.js和Express v4.0上运行服务器

我正在使用请求 Uncaught SyntaxError:JSON输入意外结束,然后从服务器获取响应我正在获取响应,但没有最后一个符号(“}”),因此当我尝试解析JSON时会引发错误。 问题是,如果我对Chrome的xmlhttprequest执行相同的请求,则可以使用相同的头和相同的主体

请求参数:

request({
                    method:"POST",
                    jar:true,
                    url:host+"/api/location",
                    form:{
                        longitude:elem.longitude,
                        latitude:elem.latitude
                    },
                    followAllRedirects:true
                },(err,res,body)=>{
                    logger.log(body);
                    body = JSON.parse(body);
                    assert(!body.success);
                    assert(body.longitude != elem.longitude && body.latitude != elem.latitude);
                    done();
                });

响应返回快递中的错误代码:

res.send(JSON.stringify(({
  error:"Unknown",
  errorCode:errorCode,
  success:false,
  "-_-":"_-_"
})));

最后一个字段是尝试发送另一个字段,并检查其他字段是否格式错误。 它没有格式错误,但最后一个符号仍未纠正。

我也尝试使用具有相同主体的res.json()但没有成功。 同样的结果。

我可以做什么? 反正要找到问题所在?

您无需对JSON进行字符串化并解析结果。 您应该能够仅将JSON作为响应发送,并且请求回调中的“ body”应包含响应中的JSON。

我修好了它。

服务器端出现错误,由于某些原因该错误不可见。

res.json()。end()被使用了两次。 因此,正文已经发送,我正在尝试添加其他内容。 这是奇怪的行为

暂无
暂无

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

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