$.ajax的post方式被转成get请求

来源:简书 分类: 文章浏览史 发布时间:2022-02-26 22:21:17 最后更新:2022-02-26 浏览:810
转载声明:
本文为摘录自“简书”,版权归原作者所有。
温馨提示:
为了更好的体验,请点击原文链接进行浏览
摘录时间:
2022-02-26 22:21:17

问题描述

最近开发时,前后端接口联调遇到点问题:

$.ajax post请求被转成get

由于前后端分离,自然有了跨域问题,所以使用了jsonp

ajax代码:

$.ajax({
    url: '',
    type:'post',
    data:JSON.stringify({
      "offDocId": 69847,
      "replyFlag": true
    }),
    dataType: 'jsonp',
    jsonp: 'callback',
    success: function(data) {
      console.log('批复列表', JSON.stringify(data))
    }
  })

浏览器调试

image.png

原因如下:
因为$.ajax的 dataType 是 jsonp 而不是 json
jsonp不支持POST跨域,所以会自动转成GET

php技术微信