java - AWS 在调用 API 时阻止了混合内容

标签 java amazon-web-services http amazon-ec2 amazon-elastic-beanstalk

我在 digitalOcean 中有一个前端应用程序,域名为 testDO。此域具有 SSL 证书。所以所有的请求来源都来自https://testDO.com

我在 AWS 中有一个后端服务器,是通过将 war 文件部署到 beanstalk 中创建的。它的名称为 testAWS.us-east-2.elasticbeanstalk.com

当我直接从 url 调用 API 时,例如 http://testAWS.us-west-2.elasticbeanstalk.com/myAPI/getName 它有效。当我从前端调用相同的 API 时,我被阻塞了:混合内容。这是因为它是 http 而不是 https 吗?解决方法是什么?

最佳答案

是的,这是因为您的 HTTPS 站点试图通过被浏览器阻止的 HTTP 访问内容。您需要在前端服务器同时使用 HTTPS 或代理请求,并在那里终止 SSL 并将其转发到 Beanstalk 中的 API 服务器。

注意:由于前端和后端处于两个不同的环境中,因此为了安全起见,最好同时使用 HTTPS 而不是代理方法。

关于java - AWS 在调用 API 时阻止了混合内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47878664/

相关文章:

amazon-web-services - AWS Cloudformation 包不会更新代码

java - 如何列出http服务器目录中的所有文件?

ruby-on-rails - 在我的 Rails 答案中删除不必要的 HTTP header

performance - Apache 后面的 node.js 是否比 node.js HTTP 服务器慢得多?

java - 在 Elasticsearch Java API 中将 _source 添加到 SearchQueryBuilder 的等效函数?

java - 将一组字符串映射到特定的键值

java - Eclipse 的 JSHint 插件?

java - 将传入字符串的 unicode 表示形式转换为 UTF-8?

amazon-web-services - AWS AMI 源实例

amazon-web-services - 如何使用 terraform 获取默认的 vpc id