【问题标题】:What does GET /bla - - ms - - mean in NodeJs console?GET /bla - - ms - - 在 NodeJs 控制台中是什么意思?
【发布时间】:2015-05-18 14:21:58
【问题描述】:

当我在我的 NodeJS 应用程序中转到页面 /bla 时,控制台会打印出来

GET /bla - - ms - -

用文字(为了便于 Google 搜索)dash dash ms dash dash

这是什么意思?

【问题讨论】:

    标签: node.js console http-get


    【解决方案1】:

    这是来自 morgan 的输出,它是 node.js 的 HTTP 请求记录器中间件。

    默认情况下,它将所有请求记录到控制台。根据您的配置,它将显示来自请求的不同数据。

    如果使用默认格式(dev),显示的数据为:

    :method :url :status :response-time ms - :res[content-length]
    

    【讨论】:

    • 这样的空白日志可能是什么原因?
    • 这不能回答问题
    【解决方案2】:

    根据this thread

    日志行 GET / - - ms - - 是开发格式,表示在 Node.js 因空闲时间过长而终止 TCP 连接之前您从未发送过响应。

    所以问题是服务器没有响应请求 - 换句话说,路由中的某些中间件从未调用 next()res.send()res.end() 或任何其他响应方式。

    我意识到,如果服务器不处理客户端中止请求,也可能发生这种情况(可以通过浏览器发出请求并在完成之前单击地址栏中的 X 按钮来轻松测试)。

    根据the docs,处理方法可能类似于(未测试)

    req.on('abort', function (err) {
       if (err)
           console.error(error.message);
    
       // your code here
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-05
      • 1970-01-01
      相关资源
      最近更新 更多