标准兼容的HTTP服务器应该在出现错误的情况下,返回与RFC 7230规范相符的HTTP响应码和错误信息。在RFC 7231中定义了HTTP状态码400表示“错误的请求”,但该规范并未限制服务器必须同时返回错误信息。因此,在返回400 Bad Request的同时,服务器也需要返回一个错误信息,以便客户端可以理解发生了什么错误。
以下是一个Node.js HTTP服务器的示例,可以实现在出现错误时返回状态码和错误信息:
const http = require('http');
const server = http.createServer((request, response) => {
if (request.method !== 'GET') {
response.statusCode = 400;
response.setHeader('Content-Type', 'text/plain');
response.end('Invalid request method');
} else {
response.statusCode = 200;
response.setHeader('Content-Type', 'text/plain');
response.end('Hello World');
}
});
server.listen(3000, () => {
console.log('Server is running on http://localhost:3000/');
});
上一篇:标准兼容的主机到网络字节序转换。
下一篇:标准继承:按子字段进行连接和搜索