本地主机不发送任何数据
Local Host is not sending any data
每当我 运行 这个节点服务器在端口“8000”上时
const http=require('https')
const PORT=8000
const server=http.createServer()
server.on('request',(req,res)=>{
if (req.url==='friend'){
res.writeHead(200,{
'Content-Type':'text/plain',
})
res.end(JSON.stringify({
id:1,
name:'Sir Issac Newton',
}))
}
if (req.url==='foe'){
res.writeHead(200,{
'Content-Type':'text/plain',
})
res.end('The Enemy is Ego Bro')
}
})
server.listen(PORT,()=>{
console.log(`the respnse is exectued at ${PORT}`)
})
我在 Borwser 上收到一条错误消息:
localhost didn’t send any data.
ERR_EMPTY_RESPONSE
我尝试更改端口,但它仍然显示 error.Please 我应该怎么做并向我解释这个错误是什么。谢谢!
此代码有 3 个问题。
您应该将 const http=require('https')
更改为 const http=require('http')
。如果您想使用 HTTPS,请参阅 nodejs 文档以了解如何配置 https 服务器
在 nodejs HTTP 请求中 URL 以 /
开头并且你的条件语句不起作用
因为请求 URL 与条件语句不匹配,服务器没有响应任何事情,所以发生了这个错误。
你应该这样修改代码:
const http=require('http')
const PORT=8000
const server=http.createServer()
server.on('request',(req,res)=>{
if (req.url==='/friend'){
res.writeHead(200,{
'Content-Type':'text/plain',
});
res.end(JSON.stringify({
id:1,
name:'Sir Issac Newton',
}));
return;
}
if (req.url==='/foe'){
res.writeHead(200,{
'Content-Type':'text/plain',
});
res.end('The Enemy is Ego Bro');
return;
}
res.writeHead(400,{
'Content-Type':'text/plain',
});
res.end('URL not match');
})
server.listen(PORT,()=>{
console.log(`the respnse is exectued at ${PORT}`)
})
每当我 运行 这个节点服务器在端口“8000”上时
const http=require('https')
const PORT=8000
const server=http.createServer()
server.on('request',(req,res)=>{
if (req.url==='friend'){
res.writeHead(200,{
'Content-Type':'text/plain',
})
res.end(JSON.stringify({
id:1,
name:'Sir Issac Newton',
}))
}
if (req.url==='foe'){
res.writeHead(200,{
'Content-Type':'text/plain',
})
res.end('The Enemy is Ego Bro')
}
})
server.listen(PORT,()=>{
console.log(`the respnse is exectued at ${PORT}`)
})
我在 Borwser 上收到一条错误消息:
localhost didn’t send any data. ERR_EMPTY_RESPONSE
我尝试更改端口,但它仍然显示 error.Please 我应该怎么做并向我解释这个错误是什么。谢谢!
此代码有 3 个问题。
您应该将
const http=require('https')
更改为const http=require('http')
。如果您想使用 HTTPS,请参阅 nodejs 文档以了解如何配置 https 服务器在 nodejs HTTP 请求中 URL 以
/
开头并且你的条件语句不起作用因为请求 URL 与条件语句不匹配,服务器没有响应任何事情,所以发生了这个错误。
你应该这样修改代码:
const http=require('http')
const PORT=8000
const server=http.createServer()
server.on('request',(req,res)=>{
if (req.url==='/friend'){
res.writeHead(200,{
'Content-Type':'text/plain',
});
res.end(JSON.stringify({
id:1,
name:'Sir Issac Newton',
}));
return;
}
if (req.url==='/foe'){
res.writeHead(200,{
'Content-Type':'text/plain',
});
res.end('The Enemy is Ego Bro');
return;
}
res.writeHead(400,{
'Content-Type':'text/plain',
});
res.end('URL not match');
})
server.listen(PORT,()=>{
console.log(`the respnse is exectued at ${PORT}`)
})