如何从服务器到浏览器获取数据

时间:2020-08-05 05:55:39

标签: javascript node.js

在节点js中,我制作了这个api:

refreshToken

现在,当我使用以下方法获取数据时:

app.get("/user", (req, res) => {
    res.send('my data from server')
});

我希望在fetch('http://localhost:1000/user', { method: "GET", }) .then(data => console.log(data)) .catch((error) => { console.error('Error:', error); });之外:

console.log(data)

和: 数据:“来自服务器的我的数据”,因此最终我期望这样的事情:

Response {type: "cors", url: "http://localhost:1000/user", redirected: false, status: 200, ok: true, …}
body: (...)
bodyUsed: false
headers: Headers {}
ok: true
redirected: false
status: 200
statusText: "OK"
type: "cors"
url: "http://localhost:1000/user"
__proto__: Response

问题:为什么我无法按预期从服务器获取数据?

2 个答案:

答案 0 :(得分:2)

您忘了抽出尸体了。

Body混合定义了以下提取物体的方法 (由请求和响应两者实现)。这些都回报了诺言 最终将通过实际内容解决。

在您的情况下,它只是文本,但也可能是JSON,具体取决于您的服务器响应。

{{1}}

答案 1 :(得分:0)

fetch('http://localhost:1000/user', {
    method: "GET",
 })
   .then(res => console.log(res.body))
   .catch((error) => {
   console.error('Error:', error);
});

您的数据在res.body内部! (我将数据重命名为res,因为它是一种标准)