使用ajax的post方法传输数据,request.getParameter获取不到参数

一、问题描述

  这次做ssm项目,使用vue.js框架,则选择axios传输数据(相当于ajax),当使用其get请求时,后台的controller中可以直接使用request.getParameter方法获取传输的json数据,用得很开心,没有bug(嘴角疯狂上扬)。然而,当ajax中使用post方法提交json数据时,出现bug-------request.getParameter获取不到对应得数据。问题图下:

  

  可以看到,前端使用json传输数据后,后台ssm框架并不能自动得填入数据,使用request方法也不能获取到数据。

二、解决方法

  1、后台创建对应得实体类,并使用@RequestBody来把值注入进实体类中。

  2、后台函数使用@RequestBody Map<x,x> map来接收数据,这样数据都将封装进入map中。

  3、后台可以使用@RequestBody String str中,这样数据都将变成字符串存入str中,没啥实际作用。

  4、还可以使用读取数据流得方法,这种方法不推荐,烦琐。

  5、从源头解决,在ajax中使用get请求或者传输form数据使用$("$form").serialize(方法,则可在后台使用request获取数据。

   

  

猜你喜欢

转载自www.cnblogs.com/dxz1/p/12820392.html