Axios POST使用CORS请求执行错误块,浏览器开发工具显示200

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Axios POST使用CORS请求执行错误块,浏览器开发工具显示200相关的知识,希望对你有一定的参考价值。

在执行CORS请求时,我遇到了Axios帖子的奇怪问题。

当我使用以下代码拨打电话时

export function loginUser (props) {
	var request = axios.post(Endpoints.LOGIN_URL,
		{
			'username': props.username,
			'password': props.password
		});
	return dispatch => {
		dispatch(login())
		return request.then(
			function (response) {
				console.log('success ', response)
				dispatch(loginSuccessful(response.data))
				history.go('/home');
			})
			.catch(function (response) {
				console.log('error', response)
				dispatch(loginFailed(response.data))
			})
	}
}

当我执行此操作时,我在Dev Tools中看到了响应200状态代码。飞行前选项请求和后续响应按预期工作。如何执行代码块是catch块!!

在控制台中我收到以下错误:

跨源请求已阻止:同源策略禁止在http://localhost:8080/auth/login上读取远程资源。 (原因:缺少CORS标题'Access-Control-Allow-Origin')。

在Dev工具中我得到:enter image description here enter image description here

即使飞行前响应具有标题“Access-Control-Allow-Origin”,也不确定为什么控制台中的CORS错误!

感谢任何帮助。

答案

Access-Control-Allow-Origin标题必须出现在http://localhost:8080/auth/login POST操作的响应中。

另一答案

您的Access-Control-Allow-Origin指定端口3000,并且您在端口8080上进行连接。请尝试完全删除端口,以使您的allow origin标头为http://localhost,或者甚至将其设置为*以进行测试。

以上是关于Axios POST使用CORS请求执行错误块,浏览器开发工具显示200的主要内容,如果未能解决你的问题,请参考以下文章

在 Django 中使用 Axios 和 CORS 获取 POST 请求的错误请求并做出反应

axios POST 请求到后端时出现 CORS 错误

使用Vue js调用axios发布请求时出现CORS和网络错误

由于 CORS 错误,Axios 调用被阻止

尝试使用 gcs json api、axios、vue3、quasar 和 node14 执行单个块可恢复上传到谷歌云存储时出现 cors 错误

在vue中使用axios的Cors和预检错误