当前位置: 首页 > 知识库问答 >
问题:

java - 为什么Controller接收不到前端的请求参数?

燕永昌
2023-06-21

html请求代码是这样的,用post请求,键的名字叫name
controller的代码是这样的,因为是传json,我有加@RequestBody
实体类的代码,也是取name,getter setter也有实现

共有2个答案

东方和志
2023-06-21

查看一下 Axios 文档中关于 POST 请求中参数的说明: axios.post(url[, data[, config]])

所以修改如下:

axios.post('adminEdit/saveOrUpdateShop',{
-    params: { name: shopName, }
+    name: shopName,
})

当然不排除你项目自己改造封装了 post 方法,需要按照 post(url, { queryParams, bodyData }) 这样的方式来传递参数。

花飞扬
2023-06-21

你这个post的内容相当于Shop里还有另一个对象Params,Params里面才有id和name
要么把{params:{name:shopName}} 修改成 {name:shopName}
要么在Shop实体类里再加一个对象属性Params,Params的属性是id和name
另外还可以在RequestMapping里再加上一个属性:

produces = "application/json;charset=UTF-8"

来实现报文体校验是不是一个合法的json

 类似资料:
  • 请求是: localhost:8888/article/createArticle?articleid=1&text=我是一篇文章 为什么收不到请求?

  • 今天调用了一个接口,接口要求传一个日期过去,当时没仔细看(因为文档也没写请求参数和相应参数),以为是传一个data,里面有条件查询的参数之类的,结果第一次报错。 Required request parameter 'date' for method parameter type String is not present(方法参数类型字符串所需的请求参数“日期”不存在) 后面第二次调用的时候注意

  • 最近项目中一直会出现一个比较奇怪的现象:偶尔有用户会重复触发某个接口,但是埋点记录能确定在前端的代码里只发起了一次,前端也没重试的机制。从用户的UA以及环境找不到共同点,在网上搜了下说有可能是nginx的重试机制 https://www.cnblogs.com/caibaotimes/p/15407971.html 我们的项目都是走公司统一的结构、构建以及发布(react)所以我想问下 1、怎么确

  • 我正在我的本地主机上构建Web应用程序。 前端是Reactjs框架,运行在LocalHost:3000中

  • 本文向大家介绍SpringBoot请求参数接收方式,包括了SpringBoot请求参数接收方式的使用技巧和注意事项,需要的朋友参考一下 application/json接收 x-www-form-urlencoded、?拼接、form-data接收 UserDto 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。

  • 我正在写一个微信小程序,使用flask作为后端,ide使用pycharm社区版,目前完成了登录功能并在微信开发者工具模拟器中实现了该功能,但在进行真机调试时出现了问题 在连接同一个wifi的情况下,在真机调试过程中当我发送一个request时,对应的login函数并没有执行,也没有发送response和错误信息! 我在使用模拟器发送post请求时(本机测试,ip地址192.168.0.107),可