前端传递对象参数,以及后端接受参数 @PathVariable @RequestParam @RequestBody 注解的使用

这篇具有很好参考价值的文章主要介绍了前端传递对象参数,以及后端接受参数 @PathVariable @RequestParam @RequestBody 注解的使用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

太久没写前后端传递参数了,总是格式对不上号


提示:以下是本篇文章正文内容,下面案例可供参考

一、接收参数注解 @PathVariable

拼接在 url 地址中的

请求 url 如 : http://localhost:8001/eduservice/edu-teacher/1/3 
这里的 1/3  这两个都是传递的参数

后端

@PostMapping("{page}/{limit}")
    @ApiOperation("条件分页查询讲师")
    public R pageWithConditions(@ApiParam(name = "page", value = "页码", required = true)
                                @PathVariable Integer page,
                                @ApiParam(name = "limit", value = "记录条数", required = true)
                                @PathVariable Integer limit) {}

前端
api

export function list(page, limit, searchObj) {
  return request({
    url: `/eduservice/edu-teacher/${page}/${limit}`,  // 这里的 page / limit 就是拼接到 url 当中的参数
    method: 'post'
  })
}

调用请求

      eduTeacherAPI
        .list(this.pageObj.pageNo, this.pageObj.pageSize)
        .then(res => {})

二、接收参数注解 @RequestParam

2.1 get 请求,普通类型参数

拼接在 url 地址后面的

请求 url 如 : http://localhost:8001/eduservice/edu-teacher/test?name=testName
这里的 name=testName 是传递的参数

后端

    @GetMapping("/test")
    public R TestParam(@ApiParam(name = "id", value = "查询讲师id", required = true) @RequestParam String name) {
        System.out.println(name);
        return R.ok();
    }

前端
api

export function testParam(name) {
  return request({
    url: '/eduservice/edu-teacher/test?name=' + name,
    method: 'get'
  })
}

调用请求

      const b = 'testName'
      eduTeacherAPI.testParam(b).then(res => {
        console.log(res)
      })

2.2 post 请求,普通类型参数

放在请求头当中

请求 url 如 :http://localhost:8001/eduservice/edu-teacher/test2?name=testName
这里的 name=testName 是传递的参数

后端

    @PostMapping("/test2")
    public R TestParam2(@ApiParam(name = "id", value = "查询讲师id", required = true) @RequestParam String name) {
        System.out.println(name);
        return R.ok();
    }

前端
api

export function testParam2(name) {
  return request({
    url: '/eduservice/edu-teacher/test2',
    method: 'post',
    params: {  // 这里需要是 params  如果写 data 会报错
      name
    }
  })
}

调用请求

      const b = 'testName'
      eduTeacherAPI.testParam2(b).then(res => {
        console.log(res)
      })

三、接收参数注解 @RequestBody

post 请求,对象类型参数

前端传递对象,后端接收对象
放在请求体中的 payload / 负载
前端传递对象参数,以及后端接受参数 @PathVariable @RequestParam @RequestBody 注解的使用

后端

    @PostMapping()
    @ApiOperation("条件分页查询讲师")
    public R pageWithConditions(@ApiParam(name = "queryTeacher", value = "查询对象", required = false)
                                @RequestBody QueryTeacher queryTeacher) {}

前端
api

export function list(page, limit, searchObj) {
  return request({
    url: `/eduservice/edu-teacher`,  // 这里的 page / limit 就是拼接到 url 当中的参数
    method: 'post',
    // data: { queryTeacher: searchObj }  注意这样子写是错误的
    data: searchObj
  })
}

调用请求

      eduTeacherAPI
        .list(this.pageObj.searchObj)
        .then(res => {})

总结

例如:以上就是今天要讲的内容,本文仅仅简单介绍了 前端传递普通类型参数和对象时前端传递的方式以及后端接受是注解的使用文章来源地址https://www.toymoban.com/news/detail-426086.html

到了这里,关于前端传递对象参数,以及后端接受参数 @PathVariable @RequestParam @RequestBody 注解的使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包