gpt4 book ai didi

node.js - 使用 node.js 和 express 简单获取请求

转载 作者:搜寻专家 更新时间:2023-10-31 23:53:04 24 4
gpt4 key购买 nike

我已经尝试了所有方法,但无法弄清楚我做错了什么。我可以毫无问题地将数据从客户端发布到服务器,但反过来我无法让它工作。

我在客户端中得到的唯一响应是 ReadableByteStream {}

这是我在客户端的代码:

export function getAllQuestionnairesAction(){
return (dispatch, getState) => {

dispatch(getAllQuestionnairesRequest());

return fetch(API_ENDPOINT_QUESTIONNAIRE)
.then(res => {
if (res.ok) {
console.log(res.body)
return dispatch(getAllQuestionnairesSuccess(res.body));
} else {
throw new Error("Oops! Something went wrong");
}
})
.catch(ex => {
return dispatch(getAllQuestionnairesFailure());
});
};
}

这是我在服务器上的代码:

exports.all = function(req, res) {
var allQuestionnaires = [];

Questionnaire.find({}).exec(function(err, questionnaires) {

if(!err) {
console.log(questionnaires)
res.setHeader('Content-Type', 'application/json');
res.send(JSON.stringify({ a: 1 }));
//res.json(questionnaires)
}else {
console.log('Error in first query');
res.status(400).send(err);
}
});
}

最佳答案

我在这里做了一些猜测,因为我不确定你目前使用的是什么风格的 fetch,但我会根据 的标准实现来尝试一下>获取

fetch 解析中的response 通常没有直接可读的.body。参见 here一些直接的例子。

试试这个:

export function getAllQuestionnairesAction(){
return (dispatch, getState) => {

dispatch(getAllQuestionnairesRequest());

return fetch(API_ENDPOINT_QUESTIONNAIRE)
.then(res => {
if (res.ok) {
return res.json();
} else {
throw new Error("Oops! Something went wrong");
}
})
.then(json => {
console.log(json); // response body here
return dispatch(getAllQuestionnairesSuccess(json));
})
.catch(ex => {
return dispatch(getAllQuestionnairesFailure());
});
};
}

关于node.js - 使用 node.js 和 express 简单获取请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35280690/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com