• AnyProxy对搜狐汽车app抓包


    关于AnyProxy

    AnyProxy流程图.png-99.6kB

    • 简要描述
      当http请求经过代理服务器时,具体处理过程是:

    • 收集请求所有请求参数,包括method, header, body等

    • AnyProxy调用规则模块beforeSendRequest方法,由模块做处理,返回新的请求参数,或返回响应内容

    • 如果beforeSendRequest返回了响应内容,则立即把此响应返回到客户端(而不再发送到真正的服务端),流程结束。

    • 根据请求参数,向服务端发出请求,接收服务端响应。

    • 调用规则模块beforeSendResponse方法,由模块对响应内容进行处理

    • 把响应信息返回给客户端
      当代理服务器收到https请求时,AnyProxy可以替换证书,对请求做明文解析。

    • 调用规则模块beforeDealHttpsRequest方法,如果返回true,会明文解析这个请求,其他请求不处理

    • 被明文解析后的https请求,处理流程同http一致。未明文解析请求不会再进入规则模块做处理。

    如何使用AnyProxy

    • 安装AnyProxy
    npm install -g anyproxy@beta
    
    • 安装证书,明文显示https响应
    anyproxy-ca #生成rootCA证书,生成后需要手动信任
    

    运行之后,Windosws生成rootCA.crt证书,位于C:UsersAdministrator.anyproxycertificates
    Mac(Linux)生成rootCA.key位于~/.anyproxy/certificate 下
    双击对应的证书来导入和信任证书

    anyproxy --intercept 
    
    • 手机连接,设置代理
      手机WiFi和电脑网络在同一局域网内,修改WiFi网络,设置代理为手动,主机名为电脑ip,端口8001

    • 手机安装ca证书
      手机浏览器直接访问 http://<HOST_IP>:8002/fetchCrtFile
      下载之后点击信任

    通过AnyProxy抓取搜狐汽车在售车型

    • 通过三个界面抓取品牌,车型,在售年款的https接口
    • 通过监听界面

    微信截图_20180322142811.png-46.6kB

    • 获取相对应的接口
    https://app.auto.sohu.com/api/car/brands
    
    https://app.auto.sohu.com/api/car/brands/211/models
    
    https://app.auto.sohu.com/api/car/models/5130/trims/onsale?cityCode=110000
    
  • 相关阅读:
    作业第十六周
    web、app、小程序测试异同点
    接口测试用例演进
    Python中“if __name__=='__main__':”
    iPhone发布内测程序的方法
    我的2020
    python 参数笔记 --> 位置参数 关键字参数 命名参数 形式参数 默认参数 可变参数 可选参数 位置顺序
    uwsgi 热部署 热启动 热更新
    Supervisor 进程管理工具 笔记
    spring Boot----注解驱动开发
  • 原文地址:https://www.cnblogs.com/Py00/p/8623819.html
Copyright © 2020-2023  润新知