微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

解决axios发送post请求返回400状态码的问题

今天在用

nofollow" target="_blank" href="https://www.axios.com/brett-kavanaugh-confirmation-hearings-start-september-4-7ef3dd77-2d96-40df-b196-ca84ddcdf461.html">axios

发送一个跨域的post请求时,遇到了一个坑:Uncaught (in promise) Error: Request Failed with status code 400。

前台代码如下:

{ console.log(res.data); })

后台代码如下:

rush:js;"> @CrossOrigin @PostMapping("/employee/testpost") @ResponseBody public Result testpost(@RequestParam(value = "username",required = true) String username,@RequestParam(value = "password",required = true) String password) { System.out.println(username + "," + password); Result json = new Result(); json.setResult(1); return json; }

而当我在postman上发送post请求时就能成功获得返回数据。困扰了很久,才发现是请求头的问题。axios请求头的 Content-Type 认是 application/json,而postman认的是 application/x-www-form-urlencoded。

我这里采取的解决办法是改变后台的接收方式:

rush:js;"> @CrossOrigin @PostMapping("/employee/testpost") @ResponseBody public Result testget(@RequestBody Map map) { System.out.println(map.get("username") + "," + map.get("password")); Result json = new Result(); json.setResult(1); return json; }

这样数据就成功返回了!

以上这篇解决axios发送post请求返回400状态码的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持编程之家。

原文地址:https://www.jb51.cc/js/31065.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐