记一次Api请求

后台小伙伴指定了POST请求,请求头'Content-Type': 'application/json'

通过Allow-Control-Allow-Origin拓展解决跨域,通过jquery设置'Content-Type': 'application/json',

相应面板显示200,成功,但是返回数据为 application/json no support 等。

在swagger上模拟请求,数据是正确的

后面发现是后台返回的格式为字符串导致。

在没找出问题之前,担心是跨域问题,就借用了另一个cli3搭建的项目,通过axios去请求,通过proxy解决跨域

发现axios({method: 'post'})或axios.post都会被转为GET请求(代理又不是jsonp),并返回一个请求链接的字符串。

被借用项目的接口请求是没问题的,猜测可能是后台做了什么设置导致的

查看chrome网络请求为GET并且request headers里没有发现'Content-Type(默认请求就是application/json,为什么会没有呢?),

于是重新设置headers: {'Content-Type': 'application/json' },请求变为POST,请求成功。

猜你喜欢

转载自www.cnblogs.com/92xcd/p/10219103.html