无法从快速服务器获取数据
Cant get data from express server
我正在尝试发送 GET
请求并在我的客户端接收响应(反应)。
在我的快递服务器上:
app.get('/', function (req, res) {
res.send('Hey, I came from the express server');
})
当我使用邮递员发送请求时,我收到了一个很好的答复:
所以我不认为问题出在服务器上。
一个问题:
当我尝试像这样使用 React 发送请求时:
const getData = () => {
fetch("http://localhost:8081", {
method: "GET",
mode: 'no-cors'
}).then(response => console.log(response));
}
由于某种原因,响应状态为 0 而不是 200(在与邮递员以及 chrome 网络选项卡上检查此请求时,我收到 200
的状态代码)。
此外,如果我尝试打印 response.body
它将为空。
回复:
body: (...)
bodyUsed: false
headers: Headers {}
ok: false
redirected: false
status: 0
statusText: ""
type: "opaque"
url: ""
[[Prototype]]: Response
我做错了什么?
您需要将您的回复转为短信或json,例如:
const getData = () => {
fetch("http://localhost:8081", {
method: "GET",
mode: 'no-cors'
}).then(response => response.json()).then(data => console.log(data))
}
除了.json()
还有更多方法。它的一切都写在文档中。你只需要google它:
https://developer.mozilla.org/en-US/docs/Web/API/Response#methods
You can add a proxy property 到您的 package.json
:
"proxy": "http://localhost:8081",
然后只需使用 /
作为您的获取端点。
fetch('/'...
我正在尝试发送 GET
请求并在我的客户端接收响应(反应)。
在我的快递服务器上:
app.get('/', function (req, res) {
res.send('Hey, I came from the express server');
})
当我使用邮递员发送请求时,我收到了一个很好的答复:
所以我不认为问题出在服务器上。
一个问题:
当我尝试像这样使用 React 发送请求时:
const getData = () => {
fetch("http://localhost:8081", {
method: "GET",
mode: 'no-cors'
}).then(response => console.log(response));
}
由于某种原因,响应状态为 0 而不是 200(在与邮递员以及 chrome 网络选项卡上检查此请求时,我收到 200
的状态代码)。
此外,如果我尝试打印 response.body
它将为空。
回复:
body: (...)
bodyUsed: false
headers: Headers {}
ok: false
redirected: false
status: 0
statusText: ""
type: "opaque"
url: ""
[[Prototype]]: Response
我做错了什么?
您需要将您的回复转为短信或json,例如:
const getData = () => {
fetch("http://localhost:8081", {
method: "GET",
mode: 'no-cors'
}).then(response => response.json()).then(data => console.log(data))
}
除了.json()
还有更多方法。它的一切都写在文档中。你只需要google它:
https://developer.mozilla.org/en-US/docs/Web/API/Response#methods
You can add a proxy property 到您的 package.json
:
"proxy": "http://localhost:8081",
然后只需使用 /
作为您的获取端点。
fetch('/'...