为什么axios请求不成功

发布于 2022-09-11 17:06:36 字数 886 浏览 10 评论 0

<script src="https://unpkg.com/axios/dist/...;></script>

    <script src="./js/Jquery.js"></script>
    <script>
        $.ajax({
            url: "http://betai.yiboshi.com/sign/apply/info/addApplyInfo",
            type: "POST",
            data:{
                test:22
            },
            dataType: "json",
            success: function(data) {
            
            }
        });
        axios.post('http://beta.yiboshi.com/sign/apply/info/addApplyInfo',{
            test:222
        })
        .then(function (response) {
            console.log(response);
        })
        .catch(function (error) {
            console.log(error);
        });
        这两个请求都是同一个地址,同一个参数,为什么我的axios就是抱跨越的错呢,而且,当我把axios的参数去掉过后,就能正常访问这个接口了

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(8

紫南 2022-09-18 17:06:36

你确定是同一个地址吗:

clipboard.png

日暮斜阳 2022-09-18 17:06:36

看一下axios引入没,如果挂载全局this.

热情消退 2022-09-18 17:06:36

我猜是因为cors策略。

  1. axios默认 content-typeapplication/json ,属于非简单请求会触发options预检。而你们后台没有做对应的响应策略报跨域。
  2. 而ajax默认是 application/x-www-form-urlencoded 不会触发预检,且后台能够接收。

解决方法:

  1. content-type 2. 后台做 options 预检请求处理。
雨后咖啡店 2022-09-18 17:06:36
使用qs
安装qs

    npm install axios

然后在main.js中全局设置
//引入qs

    import qs from 'qs'

//设置baseURL

    Axios.defaults.baseURL = 'https://route.showapi.com';

//请求头

    Axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded';

最后在vue文件中

    this.$axios.post('/25-3',qs.stringify({
       //传给后端的对象
      }))
      .then(rsp=>{
      })
      .catch(error=>{
      })
    }     
墨落画卷 2022-09-18 17:06:36

应该是这两种方式像后端发送的数据格式不一样导致的。

通知家属抬走 2022-09-18 17:06:36

let param = new URLSearchParams()
param.append('test',222)
post的时候传参数要这样,

爱殇璃 2022-09-18 17:06:36

比较一下ajax和axios两个请求的请求体有什么不同呢

娇纵 2022-09-18 17:06:36

axios post 请求安装插件qs

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文