Я новичок в AWS и веб-разработке, поэтому, пожалуйста, несите меня, если мои вопросы выглядят глупо.
Мой вопрос: как я могу получить доступ (например, сделать вызов ajax) к службе Express внутри приложения React в производственной среде? Просто добавьте любой вызов ajax с адресом службы?
Приложение s3 bucket React, в котором находится React, было создано AWS codestar, означает ли это, что React и Express находятся на одной машине? Я имею в виду, что если они находятся на одной машине, вызов ajax будет быстрее, верно?
Другой вариант: поскольку Codestar создал экземпляр EC2, я могу развернуть React в EC2. Таким образом, Express на EC2 обслуживает все запросы API, но для статических файлов index.html Express напрямую возвращает развернутые ресурсы React.
Кто-нибудь знает, какое решение лучше?





Что ж, лучшее решение - это то, которое лучше соответствует вашим потребностям. Например, если вам понадобится рендеринг на стороне сервера, было бы лучше добавить ваше приложение React в EC2, который в настоящее время содержит ваше экспресс-приложение; помимо этого, Я бы продолжил использовать ведро S3 для вашего скомпилированного приложения React. Если вас беспокоит производительность / задержка, вы можете использовать AWS Cloudfront для улучшения этих таймингов.
Чтобы получить доступ к приложению Express, вы вызываете IP-адрес своего приложения (в Консоль AWS> EC2> ваш экземпляр> IPv4 Public IP или Public DNS (IPv4) в качестве вашего хоста в вызове ajax.
Чтобы уточнить, ваши ковши EC2 и S3 находятся в разных машинах.
Спасибо, Родриго, я попробую вызвать Ajax из React на S3 в Express.