在 React/Express 应用程序的生产中代理 api 请求

2023-12-23

我正在使用独立的存储库(后端和前端)开发一个 MERN-stack 项目,在发展环境中,我使用“代理”将服务器 API 与 React 连接,并且运行良好。

//package.json in react
{
...
"proxy": "http://localhost:8000/",
...
}

但是当我切换到生产环境并用已部署的链接替换代理值,不再支持“代理”。我对此进行了搜索,发现它仅适用于开发环境,并且我尝试了在互联网上找到的几种解决方案,但没有运气!

顺便说一下,我使用 Heroku 部署后端,使用 Netlify 部署前端。目前,两者都已部署,没有任何错误,但后端和前端之间没有连接。


在生产中我们不能使用(代理)。相反,我们可以在前端为后端 URL 设置一个变量,反之亦然。


让我们从backend配置:

app.use(cors({ 
   origin: "frontend_URL", 
   credentials: true 
  }));

现在,让我们看看frontend config:

在您喜欢的任何地方设置变量:

export const API_URL = "URL";

在调用 API 的文件中:

import axios from "axios";
import { API_URL } from "./your/path";
axios.defaults.withCredentials = true;

axios.get(`${API_URL}/your/route`);

现在您已准备好部署...

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 React/Express 应用程序的生产中代理 api 请求 的相关文章

  • 如何向 React 中的 onChange 函数传递附加参数

    所以 我遇到了这个问题 我这里有这种类型的元素 显然在更改输入时有事件 是否可以像这样传递参数并访问事件 如果是这样 我该怎么办 this function accepts two other params index stringValu
  • 文件操作耗时较长,收到“正在运行[文件、保存、删除创建参与者”消息

    使用 JavaScript React 和 Node 时 会发生在 VSCode 版本 1 52 1 中 我已经在 VSCode 中从事 React 项目几个月了 在那两个月的某个时刻 我开始注意到 VSCode 处理文件操作的速度显着下降
  • 单击或悬停在菜单区域之外时关闭反应按钮下拉菜单

    在我的反应应用程序中 其中一个组件正在创建一个按钮下拉菜单 如下所示 div class dropdown div
  • 纯组件在没有变化时渲染?

    我有一个像这样的纯组件 interface Props checkBoxTitleStyle any checkBoxBackgroundColor any onPressCheckBox id isChecked selectedArra
  • 在 React 中存储数据

    我实际上是 React 新手 无法选择在这种情况下存储数据的最佳方式是什么 我有一个包含一些输入的表单 我需要在提交时对这些输入中的所有数据执行一些操作 所有输入都存储在一个组件中 所以 我只需要在提交时获取所有数据 现在我正在尝试选择存储
  • 使用 Git 部署时压缩 JS/CSS 文件

    我对 git 有点陌生 另外 这是我第一个自动化部署过程的项目 到目前为止 能够做到这一点真是太幸福了git push dev并上传文件 复制配置文件等 现在 当我推送到我的开发服务器时 我想缩小 JS CSS 文件 我正在考虑在服务器上安
  • Fabric sudo 无密码解决方案

    这个问题是关于最佳实践的 我正在使用 Fabric 运行部署脚本 我的部署用户 deploy 需要 sudo 来重新启动服务 因此 我使用 Fabric 中的 sudo 函数在脚本中运行这些命令 这工作正常 但在脚本执行期间提示输入密码 我
  • 无法解构“undefined”或“null”的属性“user”

    使用 redux 检索用户信息时出错 我想从数据库获取用户信息 姓名 密码和头像地址 然后对其进行编辑 我正在使用nodejs express react redux 和jwt Actions user js import axios fr
  • 在React Native中在Android真实设备上运行应用程序时console.log输出在哪里

    我目前正在做一个项目 在那个项目中 我正在打印控制台日志但没有消息在任何地方打印 我在用npm 和 React native cli在真正的 Android 设备上运行 Thanks 如果您使用模拟器 可以按 Cmd M Android 或
  • React - 能够通过 props 控制 SVG 的填充颜色

    我有一个 SVG 这里称为 example svg 它作为组件被调用和创建 如下所示 import ReactComponent as Example from example svg import styles from index mo
  • “npx create-react-app appname”不起作用

    当我跑步时npx create react app appname我收到以下错误消息 You are running create react app 4 0 0 which is behind the latest release 4 0
  • 使用 ReactJS SPA 在 .net Core 中进行身份验证

    我尝试向 net Core 2 1 应用程序添加身份验证 从头开始 我们可以使用 VS 模板通过 React 创建新的 Web 应用程序 在这个模板中我们可以看到 app UseSpa spa gt spa Options SourcePa
  • Heroku Node.js node-http-proxy 模块没有此类应用程序错误

    我正在尝试将流量从测试应用程序的 api url 重定向到 Heroku 上托管的 api 因此 localhost api hello 应该代理到 testapp heroku com hello 并返回响应 使用 node http p
  • 反应超出最大调用堆栈大小

    如果用户未登录 我尝试将用户重定向到 TrapPage 这是我的代码 function requireAuth nextState replace if auth loggedIn replace pathname trap export
  • Material UI + Nextjs:抽屉

    我在 React Nextjs 项目中遇到了 Material UI Drawer 的实现问题 问题是 当我在导航器中重新加载页面时 抽屉和应用栏的样式崩溃 当我重新加载服务器时 这种情况没有发生 仅在页面重新加载时发生 目前我不知道我必须
  • 考虑使用“jsdom”测试环境

    我有这个简单的测试 import React from react import render from testing library react import Button from describe Button gt it rend
  • 在 React 应用程序中使用 API 密钥

    我有一个使用两个第三方服务的 React 应用程序 该应用程序已开始使用react create app 这两项服务都需要 API 密钥 通过脚本标签提供一个密钥 如下所示 另一个 API 密钥在请求中使用 我将实际密钥存储在常量中并使用它
  • 玩笑错误反应组件上出现意外标记

    我收到了意外的令牌React Component Name在跑步的时候npm test 尝试阅读其他几个类似的问题 但似乎没有一个对我有用 我在下面添加了 babelrc package json 和我的测试文件内容的内容 presets
  • 我们如何关闭office React Fabric组件的错误消息栏?

    我正在尝试在应用程序中使用 Fabric React messageBar 组件 但即使我单击 messageBar 组件中的关闭图标 也无法关闭 关闭 消息部分 请找到以下代码以供参考 import React from react im
  • 设置状态时重新渲染过多 - useSWR

    我在用useSWR https swr vercel app docs data fetching获取数据 然后使用数据 我想通过使用reduce 获得总计 如果我 console log 输出该值 它工作正常 但一旦我尝试使用该值设置状态

随机推荐