nuxt 中使用 axios 无法发出post 请求

图片描述

this.$axios.post('url', {})

nuxt 中使用 axios , 发出 get 请求没问题, 一发 post 请求,就报 404 ,
如图显示 Method:OPTIONS ,而不是显示为 POST

阅读 7.6k
5 个回答

后端对OPTIONS方法放行了吗?GET请求算是简单请求,不会先发OPTIONS; post请求为非简单请求,会先发OPTIONS,需要后端在接口放行OPTIONS方法,或者统一对OPTIONS放法返回200。关于简单请求和非简单请求可以百度了解一下,或者看看这篇文章

如果不想第一个请求是OPTIONS 可以这样做
修改 header

'Content-Type': 'application/json; charset=utf-8',

改成

'Content-Type': 'application/x-www-form-urlencoded',

body 可以通过 querystring.stringify() 处理一下

正如楼上所说,首先和接口方确认下,这个接口是用 get 还是 post 请求。根据接口方来定。

如果服务器端没有实现响应 OPTIONS 方法,那就把 Content-Type 改成下面三个之一

  • application/x-www-form-urlencoded
  • multipart/form-data
  • text/plain

其中 text/plain 可以当 JSON 使用

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题