抛出新的 RangeError 节点 js

throw new RangeError node js

我正在尝试通过 Node.js 使用 IBM Watson Conversation 服务。 我用'express'给post留言:

app.post( '/api/message', function(req, res) {
}

并打印从服务获得的消息:

 conversation.message( payload, function(err, data) {
    if ( err ) {
      return res.status( err.code || 500 ).json( err );
    }
    return res.json( updateMessage( payload, data ) );
  } );

我只是 运行 端口 3000 上的应用程序。当页面未加载时我收到此错误:

_http_server.js:192
    throw new RangeError(`Invalid status code: ${statusCode}`);
    ^

RangeError: Invalid status code: 0
    at ServerResponse.writeHead (_http_server.js:192:11)
    at ServerResponse._implicitHeader (_http_server.js:157:8)
    at ServerResponse.OutgoingMessage.end (_http_outgoing.js:573:10)
    at ServerResponse.send (C:\IBM.Mission16\conversation-simple-master(1)\
conversation-simple-master\node_modules\express\lib\response.js:204:10)
    at ServerResponse.json (C:\IBM.Mission16\conversation-simple-master(1)\
conversation-simple-master\node_modules\express\lib\response.js:249:15)
    at C:\IBM.Mission16\conversation-simple-master(1)\conversation-simple-m
aster\app.js:86:44
    at Request._callback (C:\IBM.Mission16\conversation-simple-master(1)\co
nversation-simple-master\node_modules\watson-developer-cloud\lib\requestwrapper.
js:47:7)
    at self.callback (C:\IBM.Mission16\conversation-simple-master(1)\conver
sation-simple-master\node_modules\watson-developer-cloud\node_modules\request\re
quest.js:200:22)
    at emitOne (events.js:77:13)
    at Request.emit (events.js:169:7)

我不认为问题出在 npm 上,返回我的包...虽然这似乎是一个普遍的问题...感谢您的帮助。

对 IBM Watson Conversation 服务的请求可能以错误代码 "0" 结束,并且它不是有效的 HTTP 状态代码。这应该有效:

conversation.message(payload, function(err, data) {
  if (err) {
    return res.status(500).json(err);
  }

  return res.json(updateMessage(payload, data));
});