几天前,我几乎完成了React Native应用程序的创建。注册操作已停止工作。.我正在发送获取请求,它总是返回网络错误,尽管有400条响应,并且用户存在消息,但它在那里停止。 / p>
我正在破坏响应并显示api响应消息,而不是获取网络错误,但现在不起作用。我对登录操作也做同样的事情,并且有效。
可能包含multipart / form-data吗?
export const register = data => dispatch => {
dispatch(createUser());
const d = new FormData();
d.append("name", data.name);
d.append("email", data.email);
d.append("password", data.password);
d.append("avatar", data.avatar);
fetch(API_URL + "/register", {
method: "POST",
headers: {
"content-type": "multipart/form-data"
},
body:d
})
.then(response => response.json().then(user => ({ user, response })))
.then(({ user, response }) => {
if (!response.ok) {
console.log(response, user)
} else {
console.log(response, user)
}
})
.catch(err => {
throw err;
});
};
api路由适用于Postman。
答案 0 :(得分:0)
在这种情况下,您使用的提取错误地基于Promise,
尝试
fetch(API_URL + "/register", {
method: "POST",
headers: { "content-type": "multipart/form-data" },
body:d
})
.then(response => {
console.log(response, response.json().user)
})
.catch(err => {
console.log(err)
});
检查日志,看看它是否显示正确的网络响应并从此处进行调试。