node.js - 前端到后端请求似乎是错误的
问题描述
您好我正在尝试将一个简单的 React + Node 应用程序部署到远程服务器。后端从 pm2 开始,似乎还可以,前端与 nginx 一起工作,但是当我尝试从数据库中获取数据时,控制台发送消息
GET http://localhost:8080/v1/names net :: ERR_CONNECTION_REFUSED xhr.js: 177
不太确定我是否需要用服务器 IP 而不是 localhost 替换请求 url。
任何帮助是极大的赞赏。
解决方案
是的,您应该将所有请求从 localhost 更改为您的部署地址,我还建议您查看 .env 文件来执行此操作。环境变量无处不在的 Node.js!.
通常,您应该使用 .env 文件在部署和本地编码时自动选择好地址。祝你今天过得愉快。
带有猫鼬的 .env 文件的代码示例。
mongoose
.connect(
`mongodb+srv://${process.env.DB_USER}:${process.env.DB_PASSWORD}@cluster0.qvs4c.mongodb.net/${process.env.DB_NAME}?retryWrites=true&w=majority`
)
.then(() => {
app.set("port", process.env.PORT || 5000);
app.listen(app.get("port"), function () {
console.log("Node app is running on port", app.get("port"));
});
})
.catch((err) => {
console.log(err);
});
DB_USER=thatsmydbuser
DB_PASSWORD=thatsmypassword123!
DB_NAME=thatsmydbname
推荐阅读
- hibernate - Hibernate 多对多映射删除子实体
- heroku - 从 bitbucket 部署到 heroku
- python - RunInstances 操作:参数“iamInstanceProfile.name”不能与“iamInstanceProfile.arn”结合使用
- php - 在laravel查询中加入表和分组时如何计数
- spring - 如何在春季配置领事集群?
- android - HttpLoggingInterceptor 未登录 android 发布版本
- java - MVEL 表达式:java.lang.ClassCastException:[B 不能转换为 java.lang.Object
- azure - Azure 数据工厂 V2:用于 SQL 合并的复制或存储过程活动
- .htaccess - 服务器端包括作为模板/布局技术
- php - 通过其他子数组值将多维子数组值相加