简单介绍Anyproxy

Anyproxy 是alibaba 前端团队开源的http/https 的代理工具

官网地址:http://anyproxy.io/cn/

环境要求:需要安装nodejs

提供的功能:

  • 调试线上页面,需要注入某个脚本,或是替换一些html数据。比如常用的移动端调试工具weinre就依赖这种方法
  • 不改url,把请求发送到某台指定的服务器,移动端的dns结果有缓存,改host又效率太低
  • 查看页面首次打开时的表现,需要阻止CDN提供304这样的响应
  • 服务器不支持跨域头Access-Control-Allow-*,调试时却需要发送跨域请求。本地服务器调试app中嵌入的离线页面时常面对这种需求
  • 替换cookie,快速实现多账户切换
  • 模拟各类网速环境
  • 接管某个API的响应,进行数据mock

实际操作,查找制定名称的请求

我使用的anyproxy@beta。

安装命令

sudo npm install -g anyproxy@beta

启动

anyproxy

出现如下

➜  ~ anyproxy

[AnyProxy Log][2017-02-07 10:43:23]: the default rule for AnyProxy.

[AnyProxy Log][2017-02-07 10:43:23]: Anyproxy rules initialize finished, have fun!

[AnyProxy Log][2017-02-07 10:43:23]: GUI interface started at : http://172.18.6.97:8002/

[AnyProxy Log][2017-02-07 10:43:23]: Http proxy started at 172.18.6.97:8001

代理的ip为 172.18.6.97 端口为8001

界面地址为http://172.18.6.97:8002/,可以在浏览器打开该地址

将手机的网络请求设置代理服务器                                

设置完成后,打开app进行操作

在GUI页面中设置过滤关键字

可以看到带有pageapp的请求就被过滤出来了。

现在我打算把这些记录导出,界面上看来没有办法了。我们通过rule.js 来实现

先关闭之前的anyproxy ,按照如下命令启动

anyproxy --rule Documents/rules/pageapp.js

pageapp.js 内容如下

var logMap = {}
var fs = require('fs');
var logger = fs.createWriteStream(__dirname + '/urlLog.log', {
flags: 'a' // 'a' means appending (old data will be preserved)
})
function logPageFile(url) {
if (!logMap[url]) {
logMap[url] = true;
logger.write(url + '\r\n');
}
}
module.exports = {
summary: function() {
return "查找app中的带有pageapp的h5请求";
},
replaceResponseStatusCode: function(req, res, code) {
return new Promise((resolve, reject) => {
if (code == 200 && /pageapp/g.test(req.url) && res.headers['Content-Type'] == 'text/html') {
logPageFile(req.url)
}
resolve(code);
}); } }

这样就可以抓取到浏览过的h5地址了

使用anyproxy 来抓取手机的数据包的更多相关文章

  1. 使用Fiddler抓取手机APP数据包--360WIFI

    使用Fiddler抓取手机APP流量--360WIFI 操作步骤:1.打开Fiddler,Tools-Fiddler Options-Connections,勾选Allow remote comput ...

  2. Fiddler高级用法-抓取手机app数据包

    在上一篇中介绍了Fiddler的基本使用方法.通过上一篇的操作我们可以直接抓取浏览器的数据包.但在APP测试中,我们需要抓取手机APP上的数据包,应该怎么操作呢? Andriod配置方法 1)确保手机 ...

  3. Fiddler抓取手机APP数据包

    第一步:下载神器Fiddler,下载链接: http://w.x.baidu.com/alading/anquan_soft_down_ub/10963 下载完成之后,傻瓜式的安装一下了! 第二步:设 ...

  4. Fiddler 抓取手机APP数据包

    Fiddler是一个调试代理,下载地址http://www.telerik.com/download/fiddler 下载安装运行后,查出运行机器的IP,手机连接同一网域内的WIFI,手机WIFI连接 ...

  5. 利用Fiddler抓取手机APP数据包

    Fiddler是一个调试代理,下载地址http://www.telerik.com/download/fiddler 下载安装运行后,查出运行机器的IP,手机连接同一网域内的WIFI,手机WIFI连接 ...

  6. Fiddler2 抓取手机APP数据包

    原文:http://blog.goyiyo.com/archives/2044 下载安装运行后,查出运行机器的IP,手机连接同一网域内的WIFI,手机WIFI连接设置里的高级里,代理设置填写上Fidd ...

  7. 如何利用fiddler4 抓取手机的数据包

    1.安装fiddler . 2.设置fiddler  .tool==> option里面  https 要打开,然后选择actions 第一个 安装本地证书: 3.设置手机访问的数据都要经过fi ...

  8. 用Fiddler抓取手机APP数据包

    Fiddler下载地址 1.允许远程连接 2.允许监听https 3.重启Fiddler 这步很重要,不要忘了 4.手机配置 用ipconfig命令查询当前PC的局域网IP 将手机连接上同一个WIFI ...

  9. Fiddler 详尽教程与抓取移动端数据包

    转载自:http://blog.csdn.net/qq_21445563/article/details/51017605 阅读目录 1. Fiddler 抓包简介 1). 字段说明 2). Stat ...

随机推荐

  1. 详解Java中的clone方法

    详解Java中的clone方法 参考:http://blog.csdn.net/zhangjg_blog/article/details/18369201/ 所谓的复制对象,首先要分配一个和源对象同样 ...

  2. Java基础-方法(07)

    方法的定义 方法其实就是完成特定功能的代码块在很多语言里面都有函数的定义函数在Java中被称为方法 格式: 修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2…) { 函数体; ret ...

  3. Memcached理解

    一.Memcached简介: 1. Memcached是一个自由开源的,高性能的,分布式内存对象缓存系统. 2. Memcached是一种基于内存的key-value存储,用来存储小块的任意数据(字符 ...

  4. VUE 源码学习01 源码入口

    VUE[version:2.4.1] Vue项目做了不少,最近在学习设计模式与Vue源码,记录一下自己的脚印!共勉!注:此处源码学习方式为先了解其大模块,从宏观再去到微观学习,以免一开始就研究细节然后 ...

  5. 读书笔记-你不知道的JS上-混入与原型

    继承 mixin混合继承 function mixin(obj1, obj2) { for (var key in obj2) { //重复不复制 if (!(key in obj1)) { obj1 ...

  6. 利用python基于微博数据打造一颗“心”

    一年一度的虐狗节将至,朋友圈各种晒,晒自拍,晒娃,晒美食,秀恩爱的.程序员在晒什么,程序员在加班.但是礼物还是少不了的,送什么好?作为程序员,我准备了一份特别的礼物,用以往发的微博数据打造一颗&quo ...

  7. ASP.NET没有魔法——ASP.NET Identity的加密与解密

    前面文章介绍了如何使用Identity在ASP.NET MVC中实现用户的注册.登录以及身份验证.这些功能都是与用户信息安全相关的功能,数据安全的重要性永远放在第一位.那么对于注册和登录功能来说要把密 ...

  8. Python Web框架篇:Django文件上传

    上传方式: - Form表单上传文件 - Ajax上传文件 - 基于form表单和iframe自己实现ajax请求 1,创建项目 2,settings配置(注册app01,static路径等等这些)及 ...

  9. header操作cookie

    root@kl20080094:~# curl -I "http://www.xxx.com" HTTP/1.1 200 OK Server: nginx/0.8.53 Date: ...

  10. lvs学习笔记

    本人身为一个网工,最近一直在工作中学习linux的相关知识.前短时间通过自查资料学习了lvs的相关内容,摘录部分整理后和大家分享,内容较多,较琐碎,望见谅!!! LVS 从Linux内核版本2.6起, ...