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

目录
  • postman传参的几种格式
    • 1.参数中有基本数据类型还有 list集合类型
    • 2. 参数中有基本数据类型,还有 Map<Long,List<Long>>这种类型
  • PostMan请求Object\List、Map类型
    • Object参数传递
    • List参数传递
      • 一、简单的参数参数传递 Controller
      • 二、List和数组,组成形如List<String>等基本数据类型传参
      • 三、复杂List<Object>请求操作
    • Postman传入多个参数,请求异常Required request body is missing
    • Map类型
      • Map<String,String>
      • Map< String, List<String> >

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> >

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • postman中POST请求时参数包含参数list设置方式

    如下所示: 图中params包含多个参数,具体如下: {"rzrq":"2019-01-21","rzlx":"1","nr":"","jsonStr":"[{'gzlx':'1','gznr':'11','gzcg':'11','czwt':'11','yjjy':'11','rzgl_id':'','px':1},{'gzlx':'1','gznr':'

  • java的各种集合为什么不安全(List、Set、Map)以及代替方案

    我们已经知道多线程下会有各种不安全的问题,都知道并发的基本解决方案,这里对出现错误的情况进行一个实际模拟,以此能够联想到具体的生产环境中. 一.List 的不安全 1.1 问题 看一段代码: public static void main(String[] args) { ArrayList<String> list = new ArrayList<>(); for (int i = 0; i < 3; i++){ new Thread(()->{ list.add(U

  • 浅谈Postman解决token传参的问题

    问题描述: 有一个登陆接口获取token,其他接口再次访问都要带上token 解决方案: 1.在登陆接口访问后设置Postman的环境变量(Environment),例如设置环境变量名:token,值为登陆接口访问成功后,在responseBody中的token值,如何设置请看下面具体描述. 2.访问其他接口时token值直接读取变量即可.Postman里面获取变量的语法为:{{变量名}} 具体步骤: 1.登陆接口介绍 如图所示,login接口返回值JSON格式大体为: { "status&qu

  • postman测试post请求参数为json类型的实例讲解

    引言 Postman 是一个用来测试Web API的Chrome 外挂软件,可由google store 免费取得并安装于Chrome里,对于有在开发Web API的开发者相当有用,省掉不少写测试页面呼叫的工作,通常我们看到的使用情境多数是直接呼叫Web API而未随着Request发送相关所需参数,本篇就来说明如果我们想要在呼叫Web API时一并夹带JSON数据时,该如何使用Postman? 需求 采用POST的请求方式,并且须夹带JSON数据给Web API使用教程 第一.设置URL 第二

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

    目录 postman传参的几种格式 1.参数中有基本数据类型还有 list集合类型 2. 参数中有基本数据类型,还有 Map<Long,List<Long>>这种类型 PostMan请求Object\List.Map类型 Object参数传递 List参数传递 一.简单的参数参数传递 Controller 二.List和数组,组成形如List<String>等基本数据类型传参 三.复杂List<Object>请求操作 Postman传入多个参数,请求异常Re

  • django学习之ajax post传参的2种格式实例

    一.ajax介绍 1.ajax的含义 Ajax全称"Async Javascript And XML"即:异步的javascript和XML.它是一种称谓,并不指代某项具体的技术,准确来说是一系列技术的集合.现在,所有的无刷新操作都被称为"Ajax". 2.使用ajax的好处: 使用ajax避免了整页数据的刷新,也减少了请求等待的时间,提高了用户体验. 二.ajax传参的两种格式 假设有如下表单,需要将这些表单用ajax传参的方式传给后台,该怎么做呢- 我们知道aj

  • ajax中data传参的两种方式分析

    本文实例讲述了ajax中data传参的两种方式.分享给大家供大家参考,具体如下: 1. POST方式: /** * 订单取消 * @return {Boolean} 处理是否成功 */ function orderCancel(orderId, commant){ var flag = false; $.ajax({ type: "POST", url: "../order/orderCancel.action", //orderModifyStatus data:

  • React路由组件传参的三种方式(params、search、state)

    目录 向路由组件传递params参数 向路由组件传递search参数 向路由组件传递state参数 总结三种向路由组件传参的方式 向路由组件传递params参数 当点击消息1这个导航链接时,展示下方对应的Detail路由组件,并向这个组件传递params参数(ID,TITLE,CONTENT)信息. 向路由组件传递params参数:在路径后面跟上想要传递的值 { messageArr.map((msgObj) => { return ( <li key={msgObj.id}> <

  • vue-router传参的4种方式超详细讲解

    目录 一.router-link路由导航方式传参 二.调用$router.push实现路由传参 三.通过路由属性name匹配路由,再根据params传递参数 四.通过query来传递参数 总结 一.router-link路由导航方式传参 父组件:<router-link to="/跳转到的路径/传入的参数"></router-link> 子组件:this.$route.params.content接受父组件传递过来的参数 例如: 路由配置: bashbash{p

  • vue-router传参的四种方式超详细讲解

    目录 vue路由传参的四种方式 一.router-link路由导航方式传参 二.调用$router.push实现路由传参 三.通过路由属性name匹配路由,再根据params传递参数 四.通过query来传递参数 vue-router传递参数的几种方式 vue路由传参的四种方式 一.router-link路由导航方式传参 父组件:<router-link to="/跳转到的路径/传入的参数"></router-link>子组件:this.$route.param

  • C#实现向多线程传参的三种方式实例分析

    本文实例讲述了C#实现向多线程传参的三种方式.分享给大家供大家参考,具体如下: 从<C#高级编程>了解到给线程传递参数有两种方式,一种方式是使用带ParameterizedThreadStart委托参数的Thread构造函数,另一种方式是创建一个自定义类,把线程的方法定义为实例的方法,这样就可以初始化实例的数据,之后启动线程. 方式一:使用ParameterizedThreadStart委托 如果使用了ParameterizedThreadStart委托,线程的入口必须有一个object类型的

  • 浅谈React Native 传参的几种方式(小结)

    在React Native 中由于业务的需要, 我们往往要在诸多的页面间,组件之间做一些参数的传递与管理, 在这里我总结了几大经过验证,稳定好用的方式给大家 React Navigation 导航传值 推荐指数: ♥ ♥ ♥ ♥ ♥ 适用范围: 相互跳转的页面间传值 兼容性: IOS/Android 原理: React Navigation 为页面的 props 上挂载了 navigation 对象, 可用来做路由跳转,在做页面跳转时可以携带参数/回调方法前往目标页面, 从而达到传参的目的 说明

  • 详解vue-router传参的两种方式

    Vue Router 是 Vue.js 官方的路由管理器.它和 Vue.js 的核心深度集成,让构建单页面应用变得易如反掌.包含的功能有: 嵌套的路由/视图表 模块化的.基于组件的路由配置 路由参数.查询.通配符 基于 Vue.js 过渡系统的视图过渡效果 细粒度的导航控制 带有自动激活的 CSS class 的链接 HTML5 历史模式或 hash 模式,在 IE9 中自动降级 自定义的滚动条行为 vue-router传参两种方式:params和query params.query是什么? p

  • angular1.x ui-route传参的三种写法小结

    如下所示: .state('classrooms',{ url: '/classrooms/:id' }) .state('classrooms',{ url: '/classrooms/{id}' }) .state('activities',{ url: '/activities', params: { id: { value: 42} } }) localhost:3000/#/classrooms/3 function ClassroomController($stateParams){

随机推荐