IOS抓包工具Stream——让移动端的抓包变得轻而易举
有一天下晚班回家,在地铁上的时候,开发发来信息说,能不能把之前创建的bug再抓包看下数据。顿时心里就想,在地铁上,我上哪抓包去。之后百度了下,发现ios有一款非常实用的抓包工具,大家可以上App Store上下载,轻量级的抓包工具。今天就来分享下工具的基本使用,万一出现紧急情况,需要临时抓包,也可以来一场“紧急支援”。
话不多说,进入主题,我们先来看下Stream首页界面,是不是很简洁,使用起来也很简单。
从界面上可以看出来,功能还是齐全的,可以构建请求,设置抓包模式,还有嵌入的小工具。

构建请求
我们先从构建请求说起,构建请求,包含了接口的八种方式,在这里,再温习一下,这八种请求方式的用途。
1、Get 向特定资源发出请求(请求指定页面信息,并返回实体主体);
2、Post 向指定资源提交数据进行处理请求(提交表单、上传文件),又可能导致新的资源的建立或原有资源的修改;
3、Put 向指定资源位置上上传其最新内容(从客户端向服务器传送的数据取代指定文档的内容);
4、Head 与服务器索与get请求一致的相应,响应体不会返回,获取包含在小消息头中的原信息(与get请求类似,返回的响应中没有具体内容,用于获取报头);
5、Delete 请求服务器删除request-URL所标示的资源(请求服务器删除页面);
6、Trace 回显服务器收到的请求,用于测试和诊断;
7、opions 返回服务器针对特定资源所支持的HTML请求方法 或web服务器发送*测试服务器功能(允许客户端查看服务器性能);
8、Connect HTTP/1.1协议中能够将连接改为管道方式的代理服务器。
构建GET请求
我们了解了八种请求方式的用途,今天主要分享get和post请求方式。
Stream内的请求方式如下,可以自由选择。

选择get请求,模拟请求:访问博客园,配置请求的链接:https://account.cnblogs.com/user/userinfo

链接配置好后,点击启动按钮

请求响应成功,我们来查看响应体中的内容,如下:
由于没有传递token,所以显示的是未登录的状态。

通过postman验证,请求结果是否一致,如下:

构建POST请求
我们先切换请求方法,选择为post,选择post后,就会自动显示请求体内容,如下:

body参数,可以按字段单个添加,也可按原始数据添加,粘贴数据后,自动生成字段列表

配置好请求数据后,点击请求按钮,请求响应成功,如下:

我们来查看响应体数据,如下:
正常获取到了token

选择post请求方法,body可切换不同类型,根据自己的接口传参类型来选择,可选项为:普通表单,JSON,文件表单,通用文本类型。如下所示:

抓包实践
安装证书
点击设置下的HTTPS抓包,进入如下界面,文案提示的很明确,抓包需要安装CA证书,如同fiddler一样。
如下界面是已经安装好了证书并信任,ios如何信任证书,可参考我之前的博文:Fiddler使用过程中容易忽略的小技巧,里面有详细的介绍。

安装好了证书,接下来,就可以抓包了。
抓取请求
在app页面,点击开始抓包,会自动启用VPN服务,访问对应数据,就可以正常抓包了,是不是很简单。如下所示:

查看结果
我们来查看下抓到的请求,如下:

历史记录
抓包结束后,还可以查看抓包历史,抓取的接口,可以反复查看数据,如下:

收藏请求
在抓包过程中,想单独关注某一个接口请求响应值,可以将该接口收藏,标记起来,如下:

设置抓包模式
设置黑名单
点击界面中的设置抓包模式,则进入到设置界面,如下:

我们可以从上图得知黑白名单的用途,当设置为黑名单,则抓取所有的请求;若设置了具体的黑名单,抓取的请求则是除了具体黑名单外的接口数据。
我们具体来看操作,先配置黑名单,黑白名单不能同时开启。
将博客园的host配置进黑名单,支持通配符*,博客园不同页面的网址不同,但后缀都是一样,所以配置成*.cnblogs.com即可,如下所示:

从百度页面,访问博客园,我们来看抓取到的数据,如下:


完美的避开了所有关于博客园的访问请求记录,这就是黑名单的作用。
设置白名单
我们了解了黑名单的作用后,再来看白名单的作用,在之前也讲到了白名单的作用,就是值抓取具体白名单内的host请求,我们具体来看。
将博客园的host配置进白名单中,如下所示:

我们再来访问博客园内容,抓取的内容如下:

从上图我们可以看出,抓取到的接口,都是关于博客园的请求接口,这就是白名单的作用。为了不混淆或者过多的请求接口,来扰乱自己,则可以配置白名单。
抓包日志
在抓包过程中,还可以实时查看抓包的日志,可以来分析对应问题。
常用工具
在常用工具界面内,里面有经常用到的小工具,URL编码解码,Base64加密解密,MD5,时间戳转化,RSA加密解密。

工具具体的应用,可以尝试一番。
后记
Stream,个人认为在移动端是一款很实用的工具,万一遇到紧急情况,需要分析排错的时候,就可以方便的使用起来,不用再去紧急的找电脑。
IOS抓包工具Stream——让移动端的抓包变得轻而易举的更多相关文章
- ios 免费抓包工具Stream
ios 免费抓包工具Streamhttps://www.52pojie.cn/thread-1002406-1-1.html
- 抓包工具Fidder详解(主要来抓取Android中app的请求)
今天闲着没吊事,来写一篇关于怎么抓取Android中的app数据包?工欲行其事,必先利其器,上网google了一下,发现了一款神器:Fiddler,这个貌似是所有软件开发者必备神器呀!这款工具不仅可以 ...
- android抓包工具——使用fiddler4在安卓手机抓包
Fiddler是一款非常流行并且实用的http抓包工具,它的原理是在本机开启了一个http的代理服务器,然后它会转发所有的http请求和响应,因此,它比一般的firebug或者是chrome自带的抓包 ...
- 抓包工具 - Fiddler(如何捕获Android数据包)
如何捕获Android数据包 一.移动设备访问网络原理 先看看移动设备是怎么去访问网络,如图1所示,可以看到,移动端的数据包是从wifi出去的. 图1(移动设备访问网络) 所以我们可以把自己的电脑开启 ...
- 抓包工具Charles简单使用介绍(可抓取Android中app的请求)
摘自: 作者:Roy_Liang链接:http://www.jianshu.com/p/5539599c7a25 Charles安装 HTTP抓包 HTTPS抓包 1. Charles安装 官网下 ...
- Java 操作jar包工具类以及如何快速修改Jar包里的文件内容
需求背景:写了一个实时读取日志文件以及监控的小程序,打包成了Jar包可执行文件,通过我们的web主系统上传到各个服务器,然后调用ssh命令执行.每次上传前都要通过解压缩软件修改或者替换里面的配置文件, ...
- Wireshark抓包工具的简单使用2(抓包、查看、过滤)
在简单了解了Wireshark的界面以及各工具栏的作用后,也要掌握如何进行抓包,查询,过滤等操作 一.抓包 1.打开软件,初始界面 2.点击Caputre-->Interfaces,出现当前所有 ...
- 【转载】抓包工具Fidder详解(主要来抓取Android中app的请求) 包括https
文章:http://blog.csdn.net/jiangwei0910410003/article/details/19806999/ Fiddler官网:http://www.telerik.co ...
- fiddler+android抓包工具配置使用
今天临时增加一个工作,手机需要抓包,查看了不同的抓包工具,最后确定使用fiddler抓包工具进行操作,这里以android为例记录一下工具的配置和使用操作. fiddler的安装 网上有很多fiddl ...
随机推荐
- TCP/IP 协议栈初识
原文:深入浅出 TCP/IP 协议栈 0. 简介 TCP/IP 协议栈是网络通信中一系列网络协议的综合,是核心骨架.它定义了电子设备接入因特网.以及数据在它们之间的传输方式,是一份标准.TCP/IP ...
- Python---12函数式编程------12.2返回函数
返回函数 函数作为返回值 高阶函数除了可以接受函数作为参数外,还可以把函数作为结果值返回. 我们来实现一个可变参数的求和.通常情况下,求和的函数是这样定义的: def calc_sum(*args): ...
- jQuery、js全页面刷新方法
下面介绍全页面刷新方法:有时候可能会用到 window.location.reload()刷新当前页面. parent.location.reload()刷新父亲对象(用于框架) opener.loc ...
- 聊聊 Airtest 自动化工具
阅读文本大概需要 5 分钟. 很多读者看过之前的文章,发现我使用最多的是一款 Airtest 的自动化测试框架. Airtest 是一款适合于游戏和 App 的 UI 自动化测试框架. 下面对 Air ...
- Python Mock 的入门
Mock是什么 Mock这个词在英语中有模拟的这个意思,因此我们可以猜测出这个库的主要功能是模拟一些东西.准确的说,Mock是Python中一个用于支持单元测试的库,它的主要功能是使用mock对象替代 ...
- Microsoft Translator:消除面对面交流的语言障碍
Translator:消除面对面交流的语言障碍" title="Microsoft Translator:消除面对面交流的语言障碍"> James Simm ...
- PyGame学习笔记之壹
新建窗口 代码 '''PyGame学习笔记之壹''' import pygame # 引入 PyGame 库 pygame.init() # PyGame 库初始化 screen = pygame.d ...
- C++走向远洋——64(项目三、数组类模板)
*/ * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名:text.cpp * 作者:常轩 * 微信公众号:Worldhe ...
- 微信小程序app.js中设置公有变量
初始化GlobalData 在App.js的最上方可以设置GlobalData的初始值. App({ globalData:{ appid: '1wqas2342dasaqwe232342xxxxxx ...
- python爬虫-scrapy日志
1.scrapy日志介绍 Scrapy的日志系统是实现了对python内置的日志的封装 scrapy也使用python日志级别分类 logging.CRITICAL logging.ERROE log ...