首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何排查nodejs故障?

如何排查nodejs故障?
EN

Stack Overflow用户
提问于 2018-08-15 21:25:08
回答 2查看 311关注 0票数 0

我有一个奇怪的问题,需要解决它。

但是,请求函数没有转到api路由设置(所有其他请求都可以正常工作)。

我得到的错误消息是:

代码语言:javascript
复制
{
  errors: {
    'confirmed_by.id': {
      message: 'Cast to ObjectID failed for value "ending" at path "confirmed_by.id"',
      name: 'CastError',
      stringValue: '"ending"',
      kind: 'ObjectID',
      value: 'ending',
      path: 'confirmed_by.id',
      reason: [Object],
    },
  },
  _message: 'order validation failed',
  message:
    'order validation failed: confirmed_by.id: Cast to ObjectID failed for value "ending" at path "confirmed_by.id"',
  name: 'ValidationError',
}

有人知道这是怎么回事吗?提前感谢!

理查德

EN

回答 2

Stack Overflow用户

发布于 2018-08-15 21:27:54

当您尝试使用_id: new ObjectId(someVal)为mongoose模型创建_id时,会出现此错误。在这里,您必须确保someVal应该是24个字符的十六进制值。否则,它将引发该错误。如果假设someVal为18个字符,则添加一些静态字符,如aabbcc,它是24个字符,最重要的是,所有字符都需要是十六进制字符。

票数 0
EN

Stack Overflow用户

发布于 2018-08-15 22:15:32

有几种方法可以根据需要执行的操作或遇到的问题来调试节点应用程序。

如果你使用的是较新的节点版本(v6.3+),你可以随时使用--inspect--inspect-brk启动你的应用,这将使你能够使用Chrome来检查你的节点代码。更多细节请访问https://nodejs.org/api/debugger.html#debugger_advanced_usage。如果您使用的是较旧的版本,可以尝试使用node-inspector

另一个非常有用的工具是网络检查器(名字对吗?)与CharlesProxy一样,您可以配置节点应用程序来代理任何http请求(配置取决于您可能使用的库),并检查您的节点应用程序和世界其他地方之间的流量。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51859603

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档