描述问题
- 在
http://localhost:3000
上运行CRA - 在
package.json
上有一行:"proxy": "http://localhost:8000"
- 我的后端是uvicorn提供的FastAPI应用程序
- 用Postman发起请求(
GET http://localhost:8000/api/features
)成功 - 在React(使用axios)中发起的请求被阻塞
你尝试恢复依赖项了吗?
是的:更新了npm,删除了node_modules和package-lock,重新安装了
你在用户指南中搜索了哪些术语?
- 代理
- CORS
环境信息
当前create-react-app版本:4.0.3
系统:macOS
二进制文件:
Node: 13.11.0 - ~/.nvm/versions/node/v13.11.0/bin/node
Yarn: 未找到
npm: 7.6.2 - ~/.nvm/versions/node/v13.11.0/bin/npm
浏览器:
Chrome: 89.0.4389.82
Firefox: 86.0
npm包:
react: ^17.0.1 => 17.0.1
react-dom: ^17.0.1 => 17.0.1
react-scripts: 4.0.3 => 4.0.3
npm全局包:
create-react-app: 未找到
重现问题的步骤
- 在
http://localhost:8000
上运行本地uvicorn/FastAPI后端 - 将
"proxy": "http://localhost:8000"
添加到你的package.json中 - 在
http://localhost:3000
上启动本地CRA应用程序 - 从CRA向后端发起请求
- 注意错误消息
预期行为
代理通常对我来说很好用,我不明白为什么在这个新项目中它不起作用。似乎浏览器收到了预期的响应,但尽管有代理,它仍然被阻止。
实际行为
请求似乎在Chrome和FF中都被CORS阻止了
1条答案
按热度按时间f4t66c6m1#
我遇到了同样的问题。