Proxy 是否可以从create-react应用程序将html get请求代理到/graphql?
我有一个create react应用程序,在该应用程序中,我通过添加以下内容启用了代理:Proxy 是否可以从create-react应用程序将html get请求代理到/graphql?,proxy,create-react-app,Proxy,Create React App,我有一个create react应用程序,在该应用程序中,我通过添加以下内容启用了代理: "proxy": "http://localhost:3001", 到my package.json。对于对/graphql的API请求来说,这很好,但是当web浏览器请求/graphql(用于加载UI以运行查询)由前端处理而不是代理时。也可以代理它吗 当我试图访问OAuth时也会发生同样的情况,前端处理它而不是后端。确实可以进一步自定义代理 首先,当web浏览器请求/graphql或/auth/face
"proxy": "http://localhost:3001",
到my package.json。对于对/graphql的API请求来说,这很好,但是当web浏览器请求/graphql(用于加载UI以运行查询)由前端处理而不是代理时。也可以代理它吗
当我试图访问OAuth时也会发生同样的情况,前端处理它而不是后端。确实可以进一步自定义代理 首先,当web浏览器请求
/graphql
或/auth/facebook
时,它会发送一个Accept
头,其中包含文本/html
(以及其他内容)。使用此标头值配置CRA代理请求:
开发服务器将仅尝试将其Accept标头中没有文本/html的请求发送到代理
(原文强调)
幸运的是,您可以覆盖默认配置,并根据自己的喜好基本上钩住代理中间件。更为重要的是,问题的关键在于:
app.use(
'/graphql',
createProxyMiddleware({
target: 'http://localhost:3001',
changeOrigin: true,
})
);
非常感谢。我还必须将
returnfetch(“/api/graphql”、{[…]}
更改为returnfetch(“/graphql”、{[…]}
,但这可能取决于我的后端配置