Экспресс-сервер, Back-End, API [закрыто]
Привет, я новенькая.
- Я начал с React.js три месяца назад на YouTube.
- в основном получение API
- некоторые API защищены подписью
- не знал, что мои вызовы API должны быть на сервере, а не в React
- получение ошибки CORS
- не знала, что такое корс и как исправить.
- начал изучать серверную часть
каждое видео на YouTube:
- Заполнитель JSON
- SWAPI
- нет видео с React и back-end,
- нет POST-подписанного запроса от видео сервера.
- почти сдаться
Решение ошибки CORS:
- теперь я знаю, как исправить корс:
- с прокси для выражения в package.json,
- добавление setupProxy.js в src,
- и app.use (cors ()) в Express server.js
Мое приложение для реагирования:
- работает 24/7.
- необходимо обновлять состояния каждые 3 секунды из API.
- затем сравните данные состояния. (это некоторые секретные формулы и функции, которые не могут быть опубликованы, если это вообще возможно. Чтобы скрыть код на экспресс-сервере server.js)
- и выполнить соответствующие действия (вызовы нового API).
Часть вопроса:
- это вообще возможно?
- как работает приложение, если на сайте никого нет?
- это означает, что Express server.js всегда жив
- и React UI работает только тогда, когда кто-то открывает веб-сайт, чтобы увидеть, что происходит с данными
- как развернуть приложение-реакцию с помощью экспресс? это хорошо?:
https://dev.to/nburgess/creating-a-react-app-with-react-router-and-an-express-backend-33l3
- как разместить - где развернуть? На страницах Github?
- сделать экспресс-автозапуск сервера при развертывании или мне нужен "npm start" на хостинге
- или откройте приложение в первый раз (открыть веб-сайт)
- как это работает
- мне нужен джанго
что лучше:
- если я решу поделиться своим приложением с другими пользователями:
- чтобы дать им копию приложения React, и они развернутся
- или же
- сделать универсальное приложение, чтобы каждый пользователь мог войти в систему и иметь свой собственный экспресс-сервер с панелью управления и собственными данными и состояниями.
- если бы универсальное приложение было бы лучше узнать, что
Спасибо за любой вопрос, на который дан ответ.
Ответы
Сервер работает 24/7
когда пользователь хочет получить доступ к странице веб-сайта, сервер отправляет ему план страницы (html, css и js, который в этом случае создается вашим кодом сборки js реакции), и тогда ваше приложение реагирования оживает.
у вас уже есть экспресс для серверной части, вам не нужен django.
да, развертывание с помощью heroku в порядке. он позаботится о сервере, но вам нужно будет добавить скрипт в серверный package.json, чтобы он реагировал на сборку, если вы еще не загружаете сборку реагирования в heroku.
"heroku-postbuild": "npm install --prefix client && npm run build --prefix client"
здесь клиент - это папка, в которой вы храните код реакции.
Если он не должен быть публичным, вы не должны использовать его как состояние реакции.
Лучше использовать универсальную вещь, просто создайте систему учетных записей с владельцем в качестве привилегии и укажите URL-адрес в виде www.website.com/owner'susername и готово, каждый владелец получит свою собственную версию веб-сайта.
(на YouTube есть потрясающий учебник по стеку MERN от traversy media, который отвечает на большинство ваших вопросов)