ERR_CONNECTION_REFUSED 将 Angular 应用程序部署到 Render.com 后

问题描述 投票:0回答:1

我部署的渲染应用程序无法获取后端数据。我也无法尝试登录或注册。

在 Firefox 而不是 chrome 中打开应用程序会显示另一个错误:“跨源请求被阻止:同源策略不允许读取 http://localhost:5000/api/foods 处的远程资源。(原因:CORS 请求未成功) )。状态代码:(空)。”

应用程序链接:https://food-store-angular.onrender.com/

Github 链接:https://github.com/dannyj172/Food-Store-Angular/

控制台错误图片

javascript angular cors connection-refused render.com
1个回答
0
投票

错误“ERR_CONNECTION_REFUSED”通常表示您的前端应用程序无法与后端服务器建立连接。这可能是由于多种原因造成的,例如后端服务器未运行、无法从网络访问服务器或前端应用程序中后端 URL 配置不正确。

以下是排查和解决此问题的分步指南:

检查后端服务器状态: 首先,确保您的后端服务器已启动并正在运行。您可以尝试在浏览器中直接使用后端服务器的 URL 或通过 Postman 等工具访问后端服务器。如果您无法访问后端服务器,则服务器配置可能存在问题,或者服务器可能未运行。 在前端验证后端 URL: 仔细检查 Angular 应用程序中配置的后端 API 端点的 URL。确保 URL 已正确设置为指向后端服务器的位置。如果您使用环境变量进行配置,请确保它们定义正确。 跨源资源共享(CORS): 如果您的前端和后端托管在不同的域(源)上,您需要在后端服务器上配置 CORS 以允许来自前端的跨源请求。确保 CORS 正确配置为允许来自前端域的请求。您可以在 Node.js 后端使用 cors 等中间件来启用 CORS。 检查网络配置: 确保可以从部署前端应用程序的网络访问后端服务器。如果后端服务器在本地运行(例如,在 localhost:5000 上),则无法从 Internet 访问它,除非您配置了端口转发或通过 ngrok 等服务公开它。 调试工具: 使用浏览器开发人员工具检查网络请求和响应。检查控制台是否有任何错误消息,这些消息可能会提供有关问题的更多见解。查找由于 CORS 或网络错误而被阻止的请求。 部署环境配置: 确保前端应用程序中配置的后端 URL 与部署的后端服务器的实际 URL 匹配。如果您分别部署前端和后端,请确保将它们部署到正确的环境。 通过执行这些步骤并确定连接问题的根本原因,您应该能够解决“ERR_CONNECTION_REFUSED”错误并在前端和后端应用程序之间建立通信。

© www.soinside.com 2019 - 2024. All rights reserved.