【问题标题】:Can't use console.log inside app.get method, but works outside of it不能在 app.get 方法中使用 console.log,但可以在它之外使用
【发布时间】:2022-02-18 05:33:25
【问题描述】:

所以我遇到了一个我无法解决的问题。每次我在 app.get 方法中输入控制台时,我都无法记录任何内容。我也不能调用与控制台相关的任何其他方法。 我试过重新安装nodejs,删除节点模块,如果我使用不同的IDE(VS Code,WebStorm,Brackets)都没关系,我总是得到这个奇怪的错误,它只是显示这个: picture of broken console

我不知道如何解决这个问题,而且我对我所做的甚至破坏控制台以不再访问其任何方法感到困惑。 任何帮助将不胜感激!

【问题讨论】:

    标签: javascript node.js


    【解决方案1】:

    请不要提供代码图片。始终复制/粘贴并将其放入代码块。

    至于您的问题,您正在尝试将控制台日志添加到您在响应中发送的有效负载中。如果该控制台日志已在响应中发送到您的应用之外,该控制台日志将输出到哪里?

    如果您想登录 app.get,请执行以下操作:

    app.get('url', (req, res) => {
      console.log('hello world')
      res.status(200).send("hello");
    });
    

    您也可以添加 json,但您应该使用 res.send() 或 res.json()。

    查看这里的区别:

    Difference between res.send and res.json in Express.js

    【讨论】:

    • 谢谢,我想我今天编码太久了,我想我可以控制台.log res.json中的req.params,如果我可以问,我很感激帮助,怎么没有代码图片?
    • 发生在每个人身上 :) 有关代码的图片,请查看此讨论:meta.stackoverflow.com/questions/285551/…
    【解决方案2】:

    通过查看图像,console.log() 不起作用的原因是您在 json 对象中使用它。

    当您执行res.status(200).json() 时,您将响应 json 作为参数传递。

    json 只能包含有效的 javascript 键和值。它不能包含函数执行(因为函数不能被序列化)

    woooooo 的答案是正确的。使用 console.log() 或 res.json() 之外的任何其他函数。

    Know more about res.json()

    【讨论】:

      猜你喜欢
      • 2021-10-02
      • 1970-01-01
      • 2012-11-20
      • 1970-01-01
      • 1970-01-01
      • 2020-09-11
      • 2018-12-17
      • 1970-01-01
      • 2020-08-10
      相关资源
      最近更新 更多