【发布时间】:2018-09-25 23:20:40
【问题描述】:
我使用 React.js 制作了一个 Web 应用程序,并通过 Axios 调用后端。
但是,Firefox 在等待服务器响应时不断给我一个网络错误。其他浏览器,如 Chrome、Safari、Opera 都可以正常工作。
请求代码:
export function postLoginDetails(username, password, token) {
const url = ENV.host + "/login";
return axios({
method: 'post',
url: url,
withCredentials: true,
headers: {
"X-CSRFToken": token
},
data: {
username: username,
password: password,
},
responseType: 'json'
}).catch(e => console.log(e))
}
这是发生错误的代码:res is undefined。
postLoginDetails(username, password, this.token).then((res) => {
if (res.data.success) {
this.isAuthenticated.set(true)
cb();
} else {
this.error.set(true);
this.errorText = observable('Fehler aufgetreten');
this.name = observable('');
}
this.loginLoading.set(false);
})
【问题讨论】:
-
@Liam 它是一个节点 js express 服务器
-
嗯,您看到的是网络错误还是只是在控制台中?您是否只看到飞行前请求“OPTION”?
-
我猜这是因为您支持的服务器没有响应带有标头的飞行前请求以允许客户端服务器发送 POST 请求
-
我知道这是一年多以前的事了,但你有想过这个吗?这里有完全相同的问题。
-
@minus.273 如果我没记错的话,在触发请求的按钮上设置
type="button"会导致它正常工作,我不必切换到ajax jquery,虽然我没有'不完全理解为什么会这样。
标签: javascript reactjs firefox browser axios