我有一个React前端,它使用jwt与Django后端进行身份验证。后端工作正常,使用django视图连接得很好,但是当我尝试代理React的请求时,它给我一个连接拒绝错误。
代理错误:无法将request/api/auth/token/acture/from localhost:3000代理到http://localhost:8000(ECONNREFUSED)。
连接到http://localhost:8000/api/auth/token/acture/正常工作。并且使用Axios发送POST请求也正常工作并返回令牌JSON。但当我用node代理它时,它就不工作了。
在我的package.json
中,我有:
"proxy": {
"/api/*": {
"target": "http://localhost:8000"
}
},
编辑:公开回购。如果安装了docker,就可以轻松运行。(使用1个图像和2个容器)。克隆之后,只需运行docker-compose build
,然后运行docker-compose up
。
Edit2:请求的标头:
*General*
Request URL: http://localhost:3000/api/auth/token/obtain/
Request Method: POST
Status Code: 500 Internal Server Error
Remote Address: [::1]:3000
Referrer Policy: no-referrer-when-downgrade
*Response Headers*
HTTP/1.1 500 Internal Server Error
X-Powered-By: Express
Date: Mon, 30 Apr 2018 21:23:17 GMT
Connection: keep-alive
Transfer-Encoding: chunked
*Request Headers
POST /api/auth/token/obtain/ HTTP/1.1
Host: localhost:3000
Connection: keep-alive
Content-Length: 45
Pragma: no-cache
Cache-Control: no-cache
Origin: http://localhost:3000
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36
Content-Type: application/json
Accept: */*
Referer: http://localhost:3000/login
Accept-Encoding: gzip, deflate, br
Accept-Language: en-US,en;q=0.9,fr;q=0.8,ja;q=0.7
因此,问题是由于Node dev环境和Django dev环境都运行在单独的docker容器中,因此localhost
引用的是Node容器,而不是桥接网络。
因此,关键是使用容器链接,这是在使用docker-compose
时自动创建的,并将其用作主机名。所以我改成了
"proxy": {
"/api": {
"target": "http://django:8000"
}
},
只要您使用相同的docker-compose
命令启动这两个容器,否则您就必须在docker-compose.yml
文件中手动指定external_links。
我正在使用CreateReact应用程序编写SPA,并使用expressjs服务器作为后端。对于开发,我在端口3000上运行前端测试服务器,在3003上运行后端expressjs测试服务器。 我使用Axios在客户端进行了许多API调用,因此为了便于开发,我定义了代理:http://localhost:3003“在我的包裹里。json 这在我的笔记本电脑上运行正常,但在我的工作站上运行时,我在访问
我正在使用http代理中间件将表单数据从React前端发送到Express server, 但是似乎不起作用 它应该代理 而是抛出一个错误: 邮递http://localhost:3000/api/sendMail404(未找到)。 前端代码: 设置代理。js: 服务器js:
我有一个关于react和nodejs的项目。现在,我在localhost:4000(我的服务器)中对用户进行身份验证,然后重定向到localhost:3000/* 但是重新运行这个错误 访问位于“”的XMLHttpRequesthttp://localhost:3000/login“(已从中重定向”http://localhost:4000/login“)起源”http://localhost:3
在StackOverflow中有很多关于这个错误的问题我都看到了没有一个对我有效。我正在使用react和redux来获取一些产品。我的后端服务器节点运行在端口5000上,每当我尝试获取数据时,我都使用并发来同时启动两台服务器,它使用端口3000,我的前端正在运行。请谁来帮我解决这个问题
使用Spring Boot(后端)和React(前端)开发时,我有一个奇怪的行为。React和Spring boot都在本地主机8080上运行。 当我从React to Spring Boot向localhost:8080发送POST请求时,我在Spring Boot中遇到了以下错误: 当我从localhost:3000(React development build)向localhost:808
所以我已经创建了一个注册身份验证的后端,在邮递员工作良好,我正在让用户到mondoDb以及,我们但是当我尝试创建实际的身份验证在localhost:3000/前端。在控制台它给我错误。如果有人能帮助我,这种错误会出现在哪里。 控制器 路线 注册表