我正在学习 React.js 和 Django Rest Framework 的教程(https://www.youtube.com/watch?v=tYKRAXIio28&ab_channel=DennisIvy),然后在 1:18:10(前端部分)他添加了
proxy
到根文件夹中的 package.json,一切正常。
但是当我做同样的事情时,我遇到了一个问题,当我尝试做npm start
时,它给了我这个错误,
Invalid options object. Dev Server has been initialized using an options object that does not match the API schema.
- options.allowedHosts[0] should be a non-empty string.
我的package.json看起来像这样
{
"name": "frontend",
"version": "0.1.0",
"proxy": "http://127.0.0.1:8000",
"private": true,
"dependencies": {
我尝试自己搜索答案,我发现的最接近的答案是https://stackoverflow.com/questions/70387809/reactjs-server-is-not-starting-while-using-proxy-api,其中,您可以看到,它已被其作者自愿删除。 我发现的另一个是 https://gitmemory.cn/index.php/repo/facebook/create-react-app/issues/11762 在
.env文件中谈论
HOST
有冲突错误(我不知道)不太明白,因为我对这些东西很陌生)。但我没有有.env文件。
我也尝试过React代理错误:无法将请求/api/从localhost:3000代理到http://localhost:8000(ECONNREFUSED)通过这样做
"proxy": "http://django:8000",
似乎没有任何效果。
我已经确认问题确实是代理问题,因为当我删除此行并且应用程序正常运行时,问题不会发生。
我相信 options.allowedHosts 应该设置为一个数组,我不知道该放置什么以及放置在哪里,所以如果您理解这个问题,请友善地详细说明,谢谢。
此外,
http://127.0.0.1:8000
是我的 django 后端本地主机,以防有帮助。
编辑1:尝试过
"proxy": "http://127.0.0.1:8000",
"allowedHosts": [
"127.0.0.1"
],
"private":true,
和
"proxy": "http://127.0.0.1:8000",
"private":false,
两者都不起作用
TLDR;
proxy
package.json 破坏了我的 React 应用程序,请发送帮助
注意:这是我第一次在 stackoverflow 上提问,所以如果问题很愚蠢或者我问错了什么,我深表歉意。
我在没有连接到互联网时遇到了这个问题。一旦我连接,开发服务器就会使用命令yarn start或npm start启动。