【发布时间】:2016-08-02 05:10:32
【问题描述】:
基于 Socket 的示例,取自 nodejs 网站
var server = net.createServer((socket) => {
socket.end('goodbye\n');
}).on('error', (err) => {
// handle errors here
throw err;
});
// grab a random port.
server.listen(() => {
address = server.address();
console.log('opened server on %j', address);
});
网络服务器
const http = require('http');
const hostname = '127.0.0.1';
const port = 3000;
const server = http.createServer((req, res) => {
res.statusCode = 200;
res.setHeader('Content-Type', 'text/plain');
res.end('Hello World\n');
});
server.listen(port, hostname, () => {
console.log(`Server running at http://${hostname}:${port}/`);
});
我的问题是两者有什么区别? Web Server 是在 Socket 示例之上编程的东西,具有附加功能,例如填充不同属性的请求和响应,还是它们是不同类型的通信协议?套接字是 Web 服务器示例的底层工作吗?
【问题讨论】: