欢迎来到代码驿站!

JAVA代码

当前位置:首页 > 软件编程 > JAVA代码

关于postman传参的几种格式 list,map 等

时间:2022-07-25 10:53:51|栏目:JAVA代码|点击:

postman传参的几种格式

百度了好久,还是自己摸索出来的。。。

1.参数中有基本数据类型还有 list集合类型

   public String addUserRole(@RequestParam("userId")Long userId,
                              @RequestBody List<Long> roleIdList)

2. 参数中有基本数据类型,还有 Map<Long,List<Long>>这种类型

addRolePermission(@RequestParam("roleId") Long roleId,
                  @RequestBody Map<Long, List<Long>> metaMap)

PostMan请求Object\List、Map类型

Object参数传递

object包含一个spuId,一个skuList

List参数传递

一、简单的参数参数传递 Controller

就普通的参数传递即可。

    /**
     * 删除Customer
     * 根据ID删除
     * @return
     */
    @RequestMapping("deleteCustomerById")
    public Boolean deleteCustomerById(String id){
 
        Boolean result = mongoService.deleteCustomer(id);
 
        return result;
    }

前后台分离项目,使用Postman对写好的接口进行测试,请求类型为Post需要向后台传递List<String> list数据下面是后台控制层的java代码

@RequestMapping(value = "/del",method = RequestMethod.POST,produces = "application/json")
public Result del(@RequestBody List<String> list)

Postman页面的请求可以这么写:

二、List和数组,组成形如List<String>等基本数据类型传参

/**
     * 批量删除
     * @param ids
     * @return
     */
    @RequestMapping("deleteCustomerByIds")
    public Boolean deleteCustomerByIds(@RequestParam("ids[]") List<String> ids){
 
        Boolean result = mongoService.deleteCustomer(ids);
 
        return result;
    }

这里写图片描述

三、复杂List<Object>请求操作

/**
     * 批量删除
     * @param customers
     * @return
     */
    @RequestMapping("deleteCustomerByCustomers")
    public Boolean deleteCustomerByCustomers(@RequestBody List<Customer> customers){
 
        List<String> ids = new ArrayList<>();
        ids.add("1234");
        Boolean result = mongoService.deleteCustomer(ids);
 
        return result;
    }

这里写图片描述

实体类中引用了一个List,泛型为其他实体类

参数是List集合时,Postman中参数格式如下图所示:

Postman传入多个参数,请求异常Required request body is missing

如需要传入一个String,一个List<String>

输入参数后报错:@RequestBody对象为空,异常Required request body is missing

直接拦截了入参为空的请求,设置@RequestBody(required = false)后,将不会拦截,可以在后端进行判断

原因是两个参数都使用了@RequestBody接收,正确做法应该是分别使用@RequestParam("id"),@RequestParam("list")指定参数

Map类型

Map<String,String>

在Body中选择x-www-form-urlencoded的方式,将map中所需的key和value值输入即可

Map< String, List<String> >

上一篇:Java Stream流语法示例详解

栏    目:JAVA代码

下一篇:两个jar包下相同包名类名引入冲突的解决方法

本文标题:关于postman传参的几种格式 list,map 等

本文地址:http://www.codeinn.net/misctech/208877.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有