Hello I don't understand why I have this error, I thought the callback was executed once the data has been received, any idea where this come from ? Thanks a lot!
Node error:
SyntaxError: Unexpected end of input
at Object.parse (native)
I parse the body's answer send it to a calculate function before sending it to the page =/
var options = {
method: 'POST',
url: self.rippledataapiProxyHost.account_offers_exercised,
headers: {
"Content-Type": "application/json",
"Accept": "application/json"
},
body:parameters
};
var callback = function(error, response, body) {
if (error) {
console.log('error', error);
res.send(500, 'something went wrong');
}
console.dir("bodyyyyyyyy====>",body);
var rippleoffersexercised = new self.datacalcul.rippleoffersexercised;
var data = JSON.parse(body);
var datas = rippleoffersexercised.calculate(data);
res.status(response.statusCode).send(datas);
}
request(options, callback);
Here is the stack trace:
'bodyyyyyyyy====>'
SyntaxError: Unexpected end of input
at Object.parse (native)
at Request.callback [as _callback] (/home/francois/dev/ripplereport/webserver-newclientFrancois/server/middlewares/proxy/rippledataapiProxy.js:77:20)
at Request.self.callback (/home/francois/dev/ripplereport/webserver-newclientFrancois/node_modules/request/request.js:344:22)
at Request.emit (events.js:98:17)
at Request.<anonymous> (/home/francois/dev/ripplereport/webserver-newclientFrancois/node_modules/request/request.js:1239:14)
at Request.emit (events.js:117:20)
at IncomingMessage.<anonymous> (/home/francois/dev/ripplereport/webserver-newclientFrancois/node_modules/request/request.js:1187:12)
at IncomingMessage.emit (events.js:117:20)
at _stream_readable.js:943:16
at process._tickCallback (node.js:419:13)
[gulp] [nodemon] app crashed - waiting for file changes before starting...
As discussed in the comments, you are probably getting empty or malformed requests which cause the JSON.parse
to throw. Something like this should help you:
var callback = function(error, response, body) {
if (error) {
console.log('error', error);
return res.send(500, 'something went wrong');
}
try {
var data = JSON.parse(body);
} catch(e) {
console.log('malformed request', body);
return res.status(400).send('malformed request: ' + body);
}
console.log('body', body);
var rippleoffersexercised = new self.datacalcul.rippleoffersexercised;
var datas = rippleoffersexercised.calculate(data);
return res.status(response.statusCode).send(datas);
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With