console.error(new Error('Whoops, something bad happened'));
// Prints: [Error: Whoops, something bad happened], to stderr
var err = new Error('a');
console.error(err);
终端打印消息,如下所示:
错误:at对象。(/users/suoyong/express//error.js:1:73)在module._compile(module.js:556:32)在object.module._extensions...js(module.js:565:10)在module.load(module.js:473:32)在tryModuleLoad(module.js:432:12)在function.module.js:424:3)在module.runmain(module.js:590:10)在运行(Bootstrap_node.js:394:7)
正如您所看到的,我的代码与节点doc相同,但结果却不同。请帮我解决这个小问题。,
console.error(new Error('Whoops, something bad happened'));
// Prints: [Error: Whoops, something bad happened], to stderr
这不是从字面意义上解释的。无论如何,在最新的LTS和稳定版本中都没有。打印这样的错误实际上会打印错误对象的文本表示形式,在文档中称为[error:woops,work something happed]
。console.error()
的文档进一步阐明了实际的预期行为:
如果在第一个字符串中没有找到格式化元素(例如%d),则对每个参数调用util.inspect()
,并将结果字符串值连接起来。
在util.inspect()
方面,此方法“返回对象的字符串表示形式,该对象主要用于调试”。对于error
类型的对象,这将生成一个包含错误消息和堆栈跟踪的字符串。
> const txt = util.inspect(new Error("I'm on SO"))
undefined
> txt
'Error: I\'m on SO\n at repl:1:26\n at sigintHandlersWrap (vm.js:22:35)\n at sigintHandlersWrap (vm.js:96:12)\n at ContextifyScript.Script.runInThisContext (vm.js:21:12)\n at REPLServer.defaultEval (repl.js:313:29)\n at bound (domain.js:280:14)\n at REPLServer.runBound [as eval] (domain.js:293:12)\n at REPLServer.<anonymous> (repl.js:513:10)\n at emitOne (events.js:101:20)\n at REPLServer.emit (events.js:188:7)'
> console.log(txt)
Error: I'm on SO
at repl:1:26
at sigintHandlersWrap (vm.js:22:35)
at sigintHandlersWrap (vm.js:96:12)
at ContextifyScript.Script.runInThisContext (vm.js:21:12)
at REPLServer.defaultEval (repl.js:313:29)
at bound (domain.js:280:14)
at REPLServer.runBound [as eval] (domain.js:293:12)
at REPLServer.<anonymous> (repl.js:513:10)
at emitOne (events.js:101:20)
at REPLServer.emit (events.js:188:7)
问题内容: 我正在尝试通过节点https.request()获得一个网页。这样做会导致我的代码记录错误。使用节点请求模块具有相同的结果: 请求的问题:140398870042432:错误:140773F2:SSL例程:SSL23_GET_SERVER_HELLO:sslv3警报意外消息:s23_clnt.c:658: 以下内容指示使用了错误的SSL版本,但我找不到更改版本的方法:url错误:“ss
问题内容: 最近,我的运行Node.js的网站收到了大量访问量。随着流量的增加,它开始崩溃很多,这是以前从未发生过的。我的日志中出现以下错误: 有人知道为什么会崩溃吗?和想法如何解决呢? 我正在使用Express.js和Socket.io。它可以在Ubuntu上运行。 问题答案: 错误表示操作系统拒绝您的程序打开更多文件/插槽。 看一下:如何更改Linux中打开文件的数量限制?
问题内容: 为什么我无法连接到mysql服务器? 在同一台服务器上,Apache / PHP服务器正在运行,并且连接正常! 更新 问题答案: 如果以前能解决这个问题,我的第一个猜测就是您已经在后台运行了持有连接的node.js脚本副本。 我认为连接被拒绝是tcp / ip错误消息,而不是来自MySQL的消息,它表明该连接未运行或正在其他端口上运行或通过套接字运行。 您可以尝试远程登录到端口3308
怎么修好?oAuth2有问题吗?
问题内容: 我知道Node.js中不存在,但是我在客户端和服务器上都使用React和相同的代码。我用来检查是否存在的任何方法都可以使我: 未捕获ReferenceError:未定义窗口 如何解决我做不到的事实? 问题答案: Sawtaytoes知道了。我将运行您在componentDidMount()中拥有的任何代码,并将其包含在以下内容中: 如果在React渲染组件时仍未创建窗口对象,则始终可以
我无法成功解析返回的令牌来验证最终的Paypal沙箱支付过程。如有任何帮助或投入,将不胜感激:) API: 最后,paypal-express文档: