首页 > 其他分享 >模拟应用网关下游系统的一些场景测试接口

模拟应用网关下游系统的一些场景测试接口

时间:2023-08-19 10:57:18浏览次数:46  
标签:map 网关 场景 请求 Map 接口 reqparamsmap paramName put

场景:构造一个返回请求参数(表单入参),请求header,设置响应header的测试demo接口

框架:springboot

@ResponseBody

@RequestMapping("/test/api/v1")

public Map serverPostTestv1(HttpServletRequest httpRequest, HttpServletResponse httpResponse,@RequestHeader MultiValueMap<String,String> reqHeaders){

     Map map = new HashMap();

     Map reqheadersmap = new HashMap();

     Map reqparamsmap = new HashMap();

     LOG.info("请求headers是:"+ reqHeaders);

     //获取请求header

     reqheadersmap.put("reqheaders",reqHeaders);

     //获取请求参数

     Enumeration paramNames = httpRequest.getParameterNames();

     while(paramNames.hasMoreElements()){

          String paramName = (String) paramNames.nextElement();

          String[] paramValues = httpRequest.getParameterValues(paramName);

          LOG.info("请求params是:"+ paramName);

          if(paramValues.length >0){

                   String paramValue = paramValues[0];

                    if(paramValue.length() != 0){

                             LOG.info("reqparamsmap.put 是:"+ paramName+","+paramValue);

                             reqparamsmap.put(paramName,paramValue);

                      }

            }

    }

    //设置响应headers

   httpResponse.setHeaders("Content-Finished","999");

   httpResponse.setHeaders("Content-Halo","togwtest");

   //请求头,请求参数放进map

   map.put("reqparams",reqparamsmap);

   map.put("reqheaders",reqheadersmap);

   return map;

}

标签:map,网关,场景,请求,Map,接口,reqparamsmap,paramName,put
From: https://www.cnblogs.com/yinzone/p/17642166.html

相关文章

  • I/O流、stream流、函数式接口
    I/O流intern()方法:首先会去常量池中查看是否存在这样的对象,如果不存在,则创建,创建好之后再将这个常量池中创建的内存地址赋值给相应的引用。Strings4=s3.intern();Strings5="管理员很水";//由于s4已经在常量池中创建了字符串"管理员很水",此时只需要将这个字符串的内存地址赋......
  • 使用接口管理微信收藏夹
    获取收藏信息小提示:获取收藏相关信息注意:该接口作用不大请求URL:http://域名地址/api/favor/getinfo请求方式:POST请求头:Content-Type:application/jsonX-GEWE-TOKEN:后台获取参数:参数名称数据类型必填说明appid是string设备idsync_key是string返回数据:参数名数据类型说明retnumber0:......
  • fastjson对接口参数的某个字段不打印输出,如文件的base64字符串
    fastjson对接口参数的某个字段不打印输出,如文件的base64字符串packagecom.example.core.mydemo.json5;importcom.alibaba.fastjson.JSON;importcom.alibaba.fastjson.annotation.JSONField;/**需要提供getset方法,如果使用@Datalombok不生效(关键)**publicclassIte......
  • C++中String的语法及常用接口用法
    在C语言中,string是一个标准库类(class),用于处理字符串,它提供了一种更高级、更便捷的字符串操作方式,string 类提供了一系列成员函数和重载运算符,以便于对字符串进行操作和处理。一、string类在学习string前,我们不妨先来了解一下string类到底是什么,有什么用呢?我们先来了解一下基本......
  • 登陆接口实现返回token
    自定义登陆接口,然后让SpringSecurity对这个接口放行,让用户访问这个接口的时候不用登录也能访问。在接口中我们通过AuthenticationManager的authenticate方法来进行用户认证,所以需要在SecurityConfig中配置把AuthenticationManager注入容器。认证成功的话要生成一个jwt,放入响......
  • JavaScript中常见的数据结构和算法及其应用场景简介
    在JavaScript编程中,数据结构和算法是必不可少的组成部分。本文将介绍JavaScript中常见的数据结构和算法以及它们的应用场景。数据结构数组数组是JavaScript中最常见的数据结构之一。它是一种有序的集合,可以存储任意类型的数据。由于数组支持快速随机访问,因此它非常适合用于存......
  • 业务开发时,接口不能对外暴露怎么办?
    在业务开发的时候,经常会遇到某一个接口不能对外暴露,只能内网服务间调用的实际需求。面对这样的情况,我们该如何实现呢?今天,我们就来理一理这个问题,从几个可行的方案中,挑选一个来实现。推荐一个开源免费的SpringBoot实战项目:https://github.com/javastacks/spring-boot-best-p......
  • RocketMQ 5.0 架构解析:如何基于云原生架构支撑多元化场景
    作者:隆基本文将从技术角度了解RocketMQ的云原生架构,了解RocketMQ如何基于一套统一的架构支撑多元化的场景。文章主要包含三部分内容。首先介绍RocketMQ5.0的核心概念和架构概览;然后从集群角度出发,从宏观视角学习RocketMQ的管控链路、数据链路、客户端和服务端如何交互;最后......
  • 阿里云产品测评赢大奖丨云原生网关 MSE-Higress
    产品介绍云原生网关MSE-Higress(以下简称MSE-Higress)是遵循开源Ingress/GatewayAPI标准的下一代网关产品,将传统的流量网关、微服务网关、安全网关合三为一,降低50%的资源开销,具有高集成、易使用、易扩展、热更新的特点。MSE-Higress提供了流量调度、服务治理、安全防护......
  • 文字转语音 - 搭建微软tts整合web服务提供api接口(免费)
     微软tts是业界公认文字转语音效果最佳本文使用docker搭建微软tts服务并提供api接口对外提供服务对接官方免费在线体验接口,搭建后可免费进行调用使用,不保证永久稳定可用调用方式url:http://127.0.0.1:5003/ttsmethod:POST参数 类型 描述text string 语音文字内容voiceName stri......