Webpack для локального запуска в пользовательском домене без проблем с сокетами

Моя установка:

Использование react-create-app с использованием прокси для использования с ним серверного API. (Использование приложения create-react-app с сервером)

Поскольку API Yahoo oAuth2 не разрешает localhost:**** или 127.0.0.1:**** в своих обратных вызовах URL-адресов ссылка.

Для этого мне нужно сначала создать прокси-сервер Nginx для отправки localhost: 3000 на порт 80, а затем я перенаправляю локальный хост на -> mywebsite.dev

Хорошо, эта настройка отлично работает, если я использую простой сервер node.js:

  1. Нажмите кнопку входа в Yahoo (/auth)
  2. Аутентификация на сервере и отправка на URL-адрес обратного вызова (mywebsite.dev/callback)
  3. После согласия с условиями yahoo меня перенаправляют на /callback, и я могу нормально использовать API

Но при использовании настройки приложения create-реагировать у меня возникают проблемы.

A) При запуске сервера все работает нормально, я захожу на mywebsite.dev, но потом получаю следующее: error msg Я получаю сообщение об ошибке, когда сервер webpack-dev пытается прослушать локальный хост:* *** и поскольку URL-адрес mywebsite.dev, он выдает эту проблему, и я не могу ее исправить!

Итак, вопрос в том, как сообщить Webpack, что мой локальный сервер находится на mywebsite.dev, а не на localhost:****?

Связано: ссылка 1 - аналогичная проблема, ссылка 2 — имя пользовательского домена node.js


person geb12    schedule 26.01.2017    source источник


Ответы (1)


вы можете указать хост во время работы веб-пакета

webpack-dev-server --port 3000 --hot --host mywebsite.dev

или ты можешь послушать

 var server = new WebpackDevServer(webpack(webpackConfig), {
    ...
  });
  server.listen(port, "mywebsite.dev", function(err) { ...
person bawa g    schedule 26.01.2017
comment
Это не решит проблему, если вы сделаете это, тогда URL станет mywebsite.dev:3000 вместо mywebsite.dev . - person geb12; 26.01.2017
comment
удалить --порт 3000 - person bawa g; 26.01.2017
comment
То же самое происходит, он просто использует порт по умолчанию: 8080: S - person geb12; 26.01.2017