Пакеты React не работают, обслуживая его как файл * stati c через express? - PullRequest
0 голосов
/ 03 апреля 2020

Это вопрос окты. Я просто решил опубликовать здесь, так как сообщество Okta очень мало, и они могут занять недели, чтобы ответить. Я надеюсь, что у кого-то здесь есть опыт работы с ними ... Или, может быть, это не вопрос о проблеме, а скорее вопрос о реакции на сборку продукции. Ограничивает ли React build / PROD использование своих модулей при обслуживании его как файл c через express?

Я развернул свое приложение, используя express. js на сервере, и реагировал . js на передней панели. После того, как я запустил 'npm run build' и сослался на каталог сборки из Express, я смог заставить свое приложение отображать реагирующие компоненты через серверную часть.

Проблема заключается в том, что при вызове пакета '@ okta / okta-реагировать', такого как okta.signIn (), я впервые получил ошибку API / аутентификации 401, думая, что это COR или связанная проблема. После дальнейшей отладки, запуска на стороне клиента (npm start (dev), NOT npx serve (prod)), okta.signIn () работает.

Имеет ли '@ okta / okta-реагировать' пакет не работает в производстве? Это потому, что я передаю это как файл * stati c через express? Какое решение здесь? Должен ли я вместо этого реализовать серверную часть okta, если да, то какова цель пакета реагирования?

Причина использования express:

Истинная интеграция почтовой программы HTTPS на стороне сервера Другое Третье сторонняя интеграция

Клиентский пакет. json

"scripts": {
 "start": "serve -s build -l 80",
 "build": "node scripts/build.js",
 "dev": "pm2 start scripts/start.js",
 "test": "node scripts/test.js --env=jsdom"
},
"proxy": "http://localhost:443",

app. js Сервер

app.use(express.static(path.join(__dirname, 'client/build')));

app.get('*', (req, res) => {    
   res.sendFile(path.join(__dirname, 'client/build/index.html'))
})
...