С Node.js, мы можем создать сервер и прослушивать произвольный порт:Как Node.js выбирают случайные порты?
var server = net.createServer();
server.listen(0, '127.0.0.1');
Первый параметр, порт 0
, указывает на то выбрать произвольный порт, и 127.0.0.1
указывает на прослушивание только локальный, as documented.
Удаляет ли Node.js порт, который не используется? Должен ли я проверить, что сам и повторить попытку, если Node.js произойдет, чтобы выбрать порт, который уже открыт и связан с другим приложением? Выбирает ли он любой старый порт или только пользовательские порты (> 1024)?
Я думаю, что он просто назначает случайный порт, но я не 100%. Я думаю, вам нужно сделать ошибку при включении и приращении и т. Д. ... как в ссылке (они повторяют с тем же портом) – bryanmac
Но тогда вам нужно задаться вопросом, что значит запускать какой-либо случайный доступный порт - если у вас нет какое-то открытие сервисов, другим и клиенту трудно обнаружить, что вы случайно обнаружили :) – bryanmac
Это обычно не проблема, так как вы соглашаетесь на порт или используете хорошо известный порт. Если у вас нет разрешения на связывание указанного порта, у вас возникнут другие проблемы. –