GET /bla - - ms - - 在 NodeJs 控制台中是什么意思?
What does GET /bla - - ms - - mean in NodeJs console?
当我在我的 NodeJS 应用程序中转到页面 /bla
时,控制台打印出
GET /bla - - ms - -
用文字(为了更容易 Google 搜索),dash dash ms dash dash
。
这是什么意思?
这是 morgan 的输出,node.js 的 HTTP 请求记录器中间件。
默认情况下,它会将所有请求记录到控制台。根据您的配置,它将显示来自请求的不同数据。
如果您使用默认格式 (dev),则显示的数据为:
:method :url :status :response-time ms - :res[content-length]
根据this thread:
The log line GET / - - ms - - is the dev format saying you never sent a response before Node.js killed the TCP connection for idling too long.
所以问题是服务器没有响应的请求 - 换句话说,路由中的一些中间件从未调用过 next()
、res.send()
、res.end()
或任何其他回应方式。
我意识到,如果服务器不处理客户端中止的请求,也会发生这种情况(可以轻松测试,例如通过浏览器发出请求并在完成之前单击地址栏中的 X 按钮).
根据 the docs,处理该问题的方法可能类似于 (未测试):
req.on('abort', function (err) {
if (err)
console.error(error.message);
// your code here
});
可能是front issue,试试postman看看有没有同样的issue
我有同样的问题,但我观察到如果我使用我的 POSTMAN,这个问题永远不会弹出,但我的反应应用程序有时 returns 正确的请求但大多数其他时间没有响应并且 POST /story/create - - ms - -
是快递日志。看代码的时候,表单提交在前面rend
很奇怪
<Form onSubmit={() => formTest()}>
<div
style={{ display: "flex", justifyContent: "center" }}
key={`inline-switch`}
className="mb-3"
>
{checkboxes.map((name, index) => (
<div key={index.toString()} className="mb-3">
<Form.Check
onChange={() => handleOnChange(index)}
label={name}
name="group1"
type="switch"
id={`inline-switch-${index}`}
/>
</div>
))}
</div>
<div style={{ display: "grid", placeItems: "center" }}>
<BootstrapButton
style={{ backgroundColor: "Blue", width: "48%" }}
type="submit"
>
Submit
</BootstrapButton>
当我清理它时
<Form >
<div
style={{ display: "flex", justifyContent: "center" }}
key={`inline-switch`}
className="mb-3"
>
{checkboxes.map((name, index) => (
<div key={index.toString()} className="mb-3">
<Form.Check
onChange={() => handleOnChange(index)}
label={name}
name="group1"
type="switch"
id={`inline-switch-${index}`}
/>
</div>
))}
</div>
<div style={{ display: "grid", placeItems: "center" }}>
<BootstrapButton
style={{ backgroundColor: "Blue", width: "48%" }}
onClick= {() => formTest()}
>
Submit
</BootstrapButton>
错误不再弹出。我不知道原因,也不保证这是真正的问题,但我建议尝试使用 CURL 或邮递员或什至其他代码(如其他反应组件的提取)来重新创建。也许你可以解决这个问题
当我在我的 NodeJS 应用程序中转到页面 /bla
时,控制台打印出
GET /bla - - ms - -
用文字(为了更容易 Google 搜索),dash dash ms dash dash
。
这是什么意思?
这是 morgan 的输出,node.js 的 HTTP 请求记录器中间件。
默认情况下,它会将所有请求记录到控制台。根据您的配置,它将显示来自请求的不同数据。
如果您使用默认格式 (dev),则显示的数据为:
:method :url :status :response-time ms - :res[content-length]
根据this thread:
The log line GET / - - ms - - is the dev format saying you never sent a response before Node.js killed the TCP connection for idling too long.
所以问题是服务器没有响应的请求 - 换句话说,路由中的一些中间件从未调用过 next()
、res.send()
、res.end()
或任何其他回应方式。
我意识到,如果服务器不处理客户端中止的请求,也会发生这种情况(可以轻松测试,例如通过浏览器发出请求并在完成之前单击地址栏中的 X 按钮).
根据 the docs,处理该问题的方法可能类似于 (未测试):
req.on('abort', function (err) {
if (err)
console.error(error.message);
// your code here
});
可能是front issue,试试postman看看有没有同样的issue
我有同样的问题,但我观察到如果我使用我的 POSTMAN,这个问题永远不会弹出,但我的反应应用程序有时 returns 正确的请求但大多数其他时间没有响应并且 POST /story/create - - ms - -
是快递日志。看代码的时候,表单提交在前面rend
<Form onSubmit={() => formTest()}>
<div
style={{ display: "flex", justifyContent: "center" }}
key={`inline-switch`}
className="mb-3"
>
{checkboxes.map((name, index) => (
<div key={index.toString()} className="mb-3">
<Form.Check
onChange={() => handleOnChange(index)}
label={name}
name="group1"
type="switch"
id={`inline-switch-${index}`}
/>
</div>
))}
</div>
<div style={{ display: "grid", placeItems: "center" }}>
<BootstrapButton
style={{ backgroundColor: "Blue", width: "48%" }}
type="submit"
>
Submit
</BootstrapButton>
当我清理它时
<Form >
<div
style={{ display: "flex", justifyContent: "center" }}
key={`inline-switch`}
className="mb-3"
>
{checkboxes.map((name, index) => (
<div key={index.toString()} className="mb-3">
<Form.Check
onChange={() => handleOnChange(index)}
label={name}
name="group1"
type="switch"
id={`inline-switch-${index}`}
/>
</div>
))}
</div>
<div style={{ display: "grid", placeItems: "center" }}>
<BootstrapButton
style={{ backgroundColor: "Blue", width: "48%" }}
onClick= {() => formTest()}
>
Submit
</BootstrapButton>
错误不再弹出。我不知道原因,也不保证这是真正的问题,但我建议尝试使用 CURL 或邮递员或什至其他代码(如其他反应组件的提取)来重新创建。也许你可以解决这个问题