This question already has answers here:
Why does my JavaScript code receive a “No 'Access-Control-Allow-Origin' header is present on the requested resource” error, while Postman does not?
(11个答案)
2年前关闭。
我正在尝试创建一个登录表单。当我用Postman测试服务时,我会得到一个带有状态码等的body对象。

但是,通过JavaScript提取,我无法获取body对象,而我刚收到一个错误:
![javascript - 无法通过JavaScript获取获取响应状态代码-LMLPHP javascript - 无法通过JavaScript获取获取响应状态代码-LMLPHP]()
我需要获取状态代码。
不检查请求是否成功是wrote it up on my anemic little blog这样的常见错误。
(11个答案)
2年前关闭。
我正在尝试创建一个登录表单。当我用Postman测试服务时,我会得到一个带有状态码等的body对象。
但是,通过JavaScript提取,我无法获取body对象,而我刚收到一个错误:
export const login = (username,password) => {
return dispatch=>{
const basicAuth = 'Basic ' + btoa(username + ':' + password);
let myHeaders = new Headers();
myHeaders.append('Authorization', basicAuth);
myHeaders.append('Content-Type', 'application/json');
fetch(`${baseUrl}api/user/login`, {
withCredentials: true,
headers: myHeaders
})
.then(function (response) {
return response.json();
})
.then(function (json) {
dispatch(setLoginInfo(json))
})
.catch(err =>{
console.log(err)
dispatch(loginFailed())
});
}
}
我需要获取状态代码。
最佳答案
状态码是响应对象上的 status
属性。另外,除非您将JSON与错误响应一起使用(当然有些人会这样做),否则您需要在调用ok
之前检查状态代码(或 json
flag):
fetch(`${baseUrl}api/user/login`, {
withCredentials: true,
headers: myHeaders
})
.then(function(response) {
console.log(response.status); // Will show you the status
if (!response.ok) {
throw new Error("HTTP status " + response.status);
}
return response.json();
})
.then(// ...
不检查请求是否成功是wrote it up on my anemic little blog这样的常见错误。
关于javascript - 无法通过JavaScript获取获取响应状态代码,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54900971/