#javascript #node.js #reactjs #networking
#javascript #node.js #reactjs #сеть
Вопрос:
Я создал приложение react на своем MacBook и получаю к нему доступ http://localhost:3000
. Кроме того, я запускаю сервер mysql nodejs express http://localhost:5000
. Когда я открываю IP-адрес с портом 3000 в браузере моего ноутбука с Windows 10 в той же сети ( http://192.166.15.85:3000
), я вижу свое приложение, но консоль выдает сетевую ошибку для моего серверной части, поскольку она не может получить доступ http://localhost:5000
. Я жестко запрограммировал axios.get()
интерфейс для вызова http://localhost:5000
, что подходит для моего MacBook. Но для ноутбука с Windows 10 мне нужен ip-адрес. Как я могу справиться с этим?
Ошибка:
GET http://localhost:5000/get_users net::ERR_CONNECTION_REFUSED
Error: Network Error
at: createError(createError.js:16)
at: XMLHttpRequest.handleError (xhr.js:91)
Комментарии:
1. Не могли бы вы опубликовать полученную ошибку? Я предполагаю, что это ссылка на CORS
2. Я обновил вопрос. Я думаю, что это связано с локальным хостом, которого нет на ноутбуке Windows. Когда я заменяю localhost на ip, он работает
3. Если вы попытаетесь получить доступ к серверной части со своего компьютера с Windows, вам необходимо заменить localhost на ip-адрес
4. Конечно, и знаете вопрос: как я могу с этим справиться?
5. Да, вы правы, вы могли бы попытаться сделать то же самое с
window.location.hostname
Ответ №1:
Вы можете получить текущее имя хоста, используя window.location.hostname
, а затем условно изменить URL-адрес