vue2前端使用axios发起post请求后端(springboot)接收不到值解决办法

 更新时间:2024年03月20日 11:22:06   作者:打工人小夏  
这篇文章主要介绍了vue2前端使用axios发起post请求后端(springboot)接收不到值解决办法,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下

一、错误回现(前后端错误演示)

axios封装-我常用的请求头参数 application/json; charset=utf-8

页面登录请求-post

网络请求正常传入参数

后端代码,查看控制台发现都为null,没取到值。

二、解决

1.尝试将前端post请求改成get,其他都不用变

发现正常取到值,打印输出正常。前端页面正常跳转。

2.后端设置为post请求,前端axios要配置请求头参数

还要再对数据再进行一次格式化(qs)

然后再去验证

后端控制台正常输出。

三、结论

后来查阅资料发现,只要我们前端只要传入对象格式的参数时,axios就会对我们的数据进行JSON.stringify的操作。也就是说,将我们的 Content-Type 变成了 application/json;charset=utf-8。
axios 使用 post 发送数据时,默认是直接把 json 放到请求体中提交到后端的。

而后端接口使用@RequestParam注解就必须设置axios的请求头为 application/x-www-form-urlencoded

@RequestParam接收的参数是来自HTTP请求体( Content-Type必须为 'application/x-www-form-urlencoded )

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

列出以下其他的值

httpService.defaults.headers['Content-Type'] = 'application/json; charset=utf-8';

上传图片最好是单独封装一个

export function fileUpload(url, params = {}) {
    return new Promise((resolve, reject) => {
        httpService({
            url: url,
            method: 'post',
            data: params,
            headers: {
                'Content-Type': 'multipart/form-data'
            }
        }).then(response => {
            resolve(response);
        }).catch(error => {
            reject(error);
        });
    });
}

以上就是vue2前端使用axios发起post请求后端(springboot)取不到值解决办法的详细内容,更多关于vue2发起post请求后端取不到的资料请关注脚本之家其它相关文章!

相关文章

  • Vue3.0 自己实现放大镜效果案例讲解

    Vue3.0 自己实现放大镜效果案例讲解

    这篇文章主要介绍了Vue3.0 自己实现放大镜效果案例讲解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-07-07
  • Vue DPlayer详细使用教程含遇到坑

    Vue DPlayer详细使用教程含遇到坑

    Vue-DPlayer是一个易于使用、高性能的基于Vue.js的视频播放器组件,本文给大家介绍Vue DPlayer详细使用,本文将从四个方面对Vue-DPlayer进行详细的阐述,感兴趣的朋友一起看看吧
    2023-10-10
  • vue3项目vite.config.js配置代理、端口、打包名以及图片压缩

    vue3项目vite.config.js配置代理、端口、打包名以及图片压缩

    这篇文章主要给大家介绍了关于vue3项目vite.config.js配置代理、端口、打包名以及图片压缩的相关资料,因为3.0版本中vue已经内置了很多关于webpack的配置,一般情况下开箱即用,需要修改则可以在vue.config.js文件中完成,需要的朋友可以参考下
    2023-12-12
  • Vue 仿百度搜索功能实现代码

    Vue 仿百度搜索功能实现代码

    本文通过实例代码给大家介绍了vue仿百度搜索功能,非常不错,具有参考借鉴价值,需要的的朋友参考下吧
    2017-02-02
  • Vue3+Element-plus项目自动导入报错的解决方案

    Vue3+Element-plus项目自动导入报错的解决方案

    vue3出来一段时间了,element也更新了版本去兼容vue3,下面这篇文章主要给大家介绍了关于Vue3+Element-plus项目自动导入报错的解决方案,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-07-07
  • 非Vuex实现的登录状态判断封装实例代码

    非Vuex实现的登录状态判断封装实例代码

    这篇文章主要给大家介绍了关于非Vuex实现的登录状态判断封装的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2022-02-02
  • vant组件中 dialog的确认按钮的回调事件操作

    vant组件中 dialog的确认按钮的回调事件操作

    这篇文章主要介绍了vant组件中 dialog的确认按钮的回调事件操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • 解决Vue开发中对话框被遮罩层挡住的问题

    解决Vue开发中对话框被遮罩层挡住的问题

    在Vue的开发中,一旦我们用到对话框,经常出现的问题是对话框被遮罩层挡住,怎么来解决这个问题呢?下面小编给大家带来了Vue开发中对话框被遮罩层挡住的问题及解决方法,一起看看吧
    2018-11-11
  • 详解vue中父子组件传递参数props的实现方式

    详解vue中父子组件传递参数props的实现方式

    这篇文章主要给大家介绍了在vue中,父子组件传递参数 props 实现方式,文章通过代码示例介绍的非常详细,对我们的学习或工作有一定的参考价值,需要的朋友可以参考下
    2023-07-07
  • vue实现全匹配搜索列表内容

    vue实现全匹配搜索列表内容

    这篇文章主要为大家详细介绍了vue实现全匹配搜索列表内容,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-09-09

最新评论