Нужно приложение Node для просмотра внешнего сайта вместо localhost - PullRequest
0 голосов
/ 29 января 2020

Я все еще новичок в Node, поэтому то, что я спрашиваю, может не сработать так, как я хочу, но вот моя дилемма.

У меня есть веб-сайт, на котором есть старый сборщик данных (который я не писал) для сбора данных. Я написал приложение Node, которое имитирует старый сборщик данных, чтобы его можно было заменить. Но теперь, когда он готов к тестированию, как мне указать приложение Node на сайт, а не на localhost? Приложение Node будет размещено на безопасном сервере.

Когда я буду тестировать в Postman, я проверю функциональность, скажем, для конечной точки 'id', проверив

localhost: 3000 / id

, но теперь я хочу, чтобы пользователь на веб-сайте переходил по адресу, например

www.myexample.com/id

Код в моем приложении Node будет работать. И я, возможно, формулирую это неправильно, но в основном, если одна из конечных точек нажата, я хочу, чтобы Node запустил код для этой конечной точки.

Код для моих конечных точек следующий:

 router.post('/id.json', function (req, res, next) {
      //do the things
}

Есть ли способ заставить Node работать таким образом с внешним веб-сайтом? Я проверил, но не сталкивался с чем-то, что могло бы работать для этой конкретной проблемы. Я использую Express, и я попытался изменить свой app.listen, чтобы

app.listen('www.example.com')

, но я получаю оттуда ошибки, поэтому я не уверен, правильно ли я использую синтаксис или, если это просто не то, что app.listen был предназначен для. В конечном итоге я хочу, чтобы приложение Node работало с веб-сайтом так же, как с localhost.

1 Ответ

1 голос
/ 29 января 2020

Вы не можете взять любое имя сайта, просто "прослушивая" его с помощью приложения узла. Когда пользователь в Inte rnet переходит на www.myexample.com/id, URL-адрес преобразуется в IP-адрес, и браузер пользователя подключается к серверу (физической машине), который работает по этому IP-адресу. Затем этот сервер принимает соединение и возвращает веб-сайт пользователю. Если у вас есть www.myexample.com доменное имя и сервер, на который указывает это доменное имя, вы должны go к серверу, снять все, что является хостом для вашего текущего веб-сайта, и запустить там приложение вашего узла. Ваше нодовое приложение даже не знает, по какому адресу веб-сайта оно размещено, все, что ему нужно, - это принимать входящие соединения и возвращать данные. Также обратите внимание на порт - http и https работают на портах 80 и 8080 соответственно (которые не указаны в URL), а приложение вашего узла, согласно вашему описанию, работает на 3000

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...