爱美容
当前位置: 首页 美容百科

怎么样进行服务器抓包测试(测试工具链)

时间:2023-06-11 作者: 小编 阅读量: 1 栏目名: 美容百科

一些代理协议允许代理服务器改变客户端的原始请求、目标服务器的原始响应,以满足代理协议的需要。因此需要考虑其他方案,本文将分享如果通过AnyProxy搭建HTTP代理服务器构建Mock服务,主要解决如上所述场景下的Mock构建问题。由于篇幅过长,考虑到阅读体验,将分为两部分介绍,本文主要介绍AnyProxy部署,若感兴趣可关注,方便阅读后续文章。http://localhost:8002/安装证书安装证书后,启动anyproxy需要使用-i参数启动,才会抓取https的请求。

AnyProxy概述

AnyProxy是阿里巴巴基于NodeJS开发的可供插件配置的HTTP/Https代理服务器。代理服务器处于客户端和服务端的中间,它可以在客户端与服务端都无感知的情况下,收集双方通信的的所有信息,它控制了完整的请求头、请求体、响应头、响应体。

完整的代理请求过程为:客户端首先与代理服务器创建连接,接着根据代理服务所使用的代理协议,请求对目标服务器创建连接或者获取目标服务器的指定资源。一些代理协议允许代理服务器改变客户端的原始请求、目标服务器的原始响应,以满足代理协议的需要。

AnyProxy具备以下几个特点:

  • 支持低网速模拟
  • 支持灵活配置的代理服务器
  • 支持 https明文代理 ,且提供了 Web 界面便于观测请求情况
  • 支持二次开发,可以用 JavaScript 来控制代理的全部流程,搭建前端个性化调试环境

官方地址:

https://github.com/alibaba/anyproxy

应用场景

我们在之前文章中介绍过基于Wiremock的Mock服务部署方式,但是仅仅部署一个Wiremock还难以满足所有实际的测试场景使用Wiremock启动的是一个服务器,如果要mock某个服务下的其中一个接口,那么其他所有的接口都需要在Wiremock启动的服务器中处理,否则想保证原有的不需要mock的接口能够正常使用的话,那就无法做到了,举个栗子,如下。

比如,原服务器地址为https://mp.toutiao.com/,Wiremock启动的地址为本地,现在要Mock "profile_v3/graphic/publish"接口,但要保证"profile_v3/graphic/comment”, “profile_v3/index/account-info”等接口能够正常使用,如果直接使用Wiremock的话,因为本地(127.0.0.1)中是没有其余两个接口的,但又要保持其能正常使用,所以要把所有接口的mock都写起来,如果是这样,那维护成本、使用成本就难以想象了。

因此需要考虑其他方案,本文将分享如果通过AnyProxy搭建HTTP(S)代理服务器构建Mock服务,主要解决如上所述场景下的Mock构建问题。

由于篇幅过长,考虑到阅读体验,将分为两部分介绍,本文主要介绍AnyProxy部署,若感兴趣可关注,方便阅读后续文章。

搭建HTTP(S)代理服务器核心步骤
  1. 安装Nodejs
  2. 安装AnyProxy
  3. 安装证书
  4. 客户端设置代理(默认代理服务器端口为8001)
  5. 启动anyproxy
Node安装

官网地址如下:

https://nodejs.org/en/download/

Node官网下载页面

下载对应系统类型的安装文件进行安装,使用如下命令验证是否安装成功 ,如下

node -v

node -v 执行结果

AnyProxy安装

使用 npm install -g 命令来安装,-g 代表global全局安装 , 无-g的时候代码本地安装,无法直接使用anyproxy命令

npm install -g anyproxy

安装成功,校验安装是否成功,并查看版本号

anyproxy --version

anyproxy --version 执行结果

AnyProxy安装证书凭证

Https需要证书才能以明文的方式显示请求内容,所以需要安装根证书,首先启动AnyProxy,启动命令如下:

anyproxy -i

打开浏览器http://localhost:8002/,点击RootCA,点击下方下载,安装证书(仅适应于电脑端,其他终端另行Google)。

http://localhost:8002/

安装证书

安装证书后,启动anyproxy需要使用 -i 参数启动,才会抓取https的请求。

客户端设置代理

上的启动屏幕中,控制面板,单击网络和共享中心,然后单击在另请参阅,下的Internet 选项,如下

在局域网 LAN)设置对话框中勾掉自动配置中的两个复选框。勾选代理服务器复选框,填写代理服务器的地址、端口。同时选中"对于本地地址不使用代理服务器"复选框,如下(记得不使用时,关闭代理服务器)。

启动anyproxy

普通的启动方式

anyproxy

拦截Https请求的启动方式

anyproxy -i

使用自定义拦截规则的启动方式

anyproxy -i --rule iTestOps.js

iTestOps.js

若对你有所帮助,欢迎大家评论、留言。

,
    推荐阅读
  • 当宝宝发烧了时这几点一定要注意(宝宝发烧别着急)

    宝宝发烧别着急春季冷暖交替感冒多发,不管宝宝还是家人很容易感冒发烧特别是婴幼儿的发烧让不少新手爸妈束手无策,焦急万分然而,在这样的慌乱之中,我们更要镇定下来,观察孩子的细节,不至于太紧张,孩子的病情也不容易被耽误为。

  • intj常说的话(读者问答0010期INTJ的最佳伴侣)

    读者问答0010期INTJ的最佳伴侣问:小姐姐,我测试了MBIT是INFP,又测试荣格八维是ISFP我感觉自己在生活中很粗心,很健忘但我总是会因为一些小事让自己心情变得很不好,有时是别人的一句话,有时是一个眼神,我都很很久不能忘我不太会。

  • 舌头有裂纹怎么了(舌头有裂纹身体有毛病)

    裂纹舌西医认为部分天生,部分是缺乏维生素B2等导致。这种症状不少见,很多35岁之后的女性,都会有。“熬夜久坐舌”的调养方式中医讲究针对病因,解决根本问题。百合就是养阴的重要食材,也是药材。桑葚主要入心肝肾经,滋阴补血,明目乌发。从舌头裂纹的位置来分辨两者的不同用法:裂纹在中前部的,吃百合;在中后部的,吃桑葚。过度节食也是肾虚的常见原因,容易脱发也与此有关。中医认为,津液主要有滋润、濡养的作用。

  • 花生米拌黄瓜的做法(花生米拌黄瓜窍门)

    步骤3然后再加入花椒、八角、桂皮、丁香、茴香、盐,搅拌均匀,盖上锅盖,用大火煮熟。步骤5黄瓜切条,再切成小块。步骤7锅中烧水,将胡萝卜丁、黄瓜丁倒入锅中,搅拌均匀,煮熟后捞出,盛入碗中。步骤8最后将花生米、黄瓜、胡萝卜放入碗中,加盐、味精、香油,拌匀装盘即可。

  • 京东申请退货审核要多久(京东申请退款审核多久)

    一般情况下,京东退货审核需要1至2天的时间。具体还要根据单笔交易的具体情况来看。通常在京东商城购物时,若是京东物流配送,一般都是次日到达,用户在收到商品后发现有问题需要退货或退款,可以及时联系京东客服,然后相关工作人员就会告知详细的退货退款流程。

  • 众口难调造句 众口难调造句小学

    6、只要市民言论自由,尽管兴趣和才智呈多样性,众口难调则在所难免。

  • 哈弗h9换减震(哈弗H9车主很有个性)

    哈弗h9换减震昨天中午,师傅的一位朋友开着爱车哈弗H9来到维修厂,他并不是要维修车,而是想借用举升机和维修工具来加装一个底盘件。我们先看一下这辆哈弗H9的底盘,下图箭头所示,这就是分动箱,位于变速箱后部,它后部连接一根长长的传动轴,车主准备加装的底盘件就是连接在分动箱上面。绿色箭头所示,这是机脚下部固定钢板支架的位置,加装的底盘件主要是给分动箱提供了一个支撑。

  • 午餐肉怎么取出来(午餐肉取出来的方法)

    午餐肉怎么取出来通常把午餐肉罐头放在在火上烤一下,就能很轻松的倒出来了。把午餐肉罐头的盖子盖好,放在热水里泡一下,然后拿出来,放到冷水里再冰一下,重新再倒就可以了。这个是运用热涨冷缩的原理。从午餐肉罐头的罐子背面扎上眼,就很容易取了,如果天气凉,稍微加一下热,让罐头里面的油稍微化一下。用刀延午餐肉罐头的边沿,划一圈就能轻松倒出,但可能会浪费不了肉哦。

  • 人生道理文案(人生道理文案精选)

    人生道理文案每天集中精力关注最重要的事情,会让我们越来越有成就感。所有道理如果不是自己悟出来,谁告诉你都没用。你可以在夜里崩溃,但我希望天一亮,你又能顶住四面八方的压力,继续生活。生活里没有险恶你不会成长;感情里没有失去你不会成熟。以热爱的态度对待生活就是对自己的温柔。努力的意义,就是在以后的日子里,放眼望去,全部都是喜欢的人和事。保持充分的自律、从容的生活节奏,才是节约时间的最好方式。

  • 杭州六和塔好玩吗(杭州六和塔景区好玩吗)

    位于西湖之南,钱塘江畔月轮山上。现在的六和塔塔身重建于南宋。六和塔又名六合塔,取"天地四方"之意。所以我们可以这样比喻说,西湖是大海的婴儿,又是钱塘江的小弟弟。可见没有钱塘江,就没有西湖。既然来到钱塘江,登一登六和塔是必须的。六和塔:是一座古塔,历经800年沧桑。在这里看钱塘江,要是时机合适的话还有钱塘江大潮,也是另外的一番景致,感觉必须是大不同啊。