2016-08-02 2 views
0
пример, основанный

гнездо, взятая с сайта 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}/`); 
}); 

Мой вопрос заключается в том, что разница между этими двумя? Является ли веб-сервер чем-то запрограммированным поверх примера Socket с дополнительными функциями, такими как запрос и ответ, заполненный различными свойствами, или они являются различными типами протоколов связи? Является ли сокет тем, что работает под капотом для примера веб-сервера?

+0

http://stackoverflow.com/questions/15108139/difference-between-socket-programming-and-http-programming –

ответ

1

Мой вопрос в том, какая разница между этими двумя?

Веб-сервер - это особый тип сервера, который понимает протокол http.

У простого сервера сокетов нет конкретного протокола. Вы должны создать свой собственный формат значения/данных для байтов, которые вы отправляете/получаете от него.

Оба являются серверами и прослушивают входящие TCP-соединения на определенном порту. Разница заключается в том, какой протокол каждый оборудован для понимания и общения.

Чтобы проиллюстрировать некоторые другие примеры, ftp-сервер понимает протокол ftp, сервер webSocket будет понимать протокол webSocket, SMTP-сервер будет понимать протокол SMTP, сервер IMAP будет понимать протокол IMAP и т. Д. .

Является ли сервер что-то веб-программируется на вершине, например розетка с дополнительными функциями, как запрос и ответ заселенных с различными свойств или имеют различные типы протоколов связи?

Да, веб-сервер построен поверх сокета и понимает данные, отправленные на этот сокет, используя протокол http.

Сокет - это то, что работает под капотом для веб-сервера пример?

Да.

Смежные вопросы