有一天下晚班回家,在地铁上的时候,开发发来信息说,能不能把之前创建的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——让移动端的抓包变得轻而易举的更多相关文章

  1. ios 免费抓包工具Stream

    ios 免费抓包工具Streamhttps://www.52pojie.cn/thread-1002406-1-1.html

  2. 抓包工具Fidder详解(主要来抓取Android中app的请求)

    今天闲着没吊事,来写一篇关于怎么抓取Android中的app数据包?工欲行其事,必先利其器,上网google了一下,发现了一款神器:Fiddler,这个貌似是所有软件开发者必备神器呀!这款工具不仅可以 ...

  3. android抓包工具——使用fiddler4在安卓手机抓包

    Fiddler是一款非常流行并且实用的http抓包工具,它的原理是在本机开启了一个http的代理服务器,然后它会转发所有的http请求和响应,因此,它比一般的firebug或者是chrome自带的抓包 ...

  4. 抓包工具 - Fiddler(如何捕获Android数据包)

    如何捕获Android数据包 一.移动设备访问网络原理 先看看移动设备是怎么去访问网络,如图1所示,可以看到,移动端的数据包是从wifi出去的. 图1(移动设备访问网络) 所以我们可以把自己的电脑开启 ...

  5. 抓包工具Charles简单使用介绍(可抓取Android中app的请求)

    摘自: 作者:Roy_Liang链接:http://www.jianshu.com/p/5539599c7a25 Charles安装 HTTP抓包 HTTPS抓包   1. Charles安装 官网下 ...

  6. Java 操作jar包工具类以及如何快速修改Jar包里的文件内容

    需求背景:写了一个实时读取日志文件以及监控的小程序,打包成了Jar包可执行文件,通过我们的web主系统上传到各个服务器,然后调用ssh命令执行.每次上传前都要通过解压缩软件修改或者替换里面的配置文件, ...

  7. Wireshark抓包工具的简单使用2(抓包、查看、过滤)

    在简单了解了Wireshark的界面以及各工具栏的作用后,也要掌握如何进行抓包,查询,过滤等操作 一.抓包 1.打开软件,初始界面 2.点击Caputre-->Interfaces,出现当前所有 ...

  8. 【转载】抓包工具Fidder详解(主要来抓取Android中app的请求) 包括https

    文章:http://blog.csdn.net/jiangwei0910410003/article/details/19806999/ Fiddler官网:http://www.telerik.co ...

  9. fiddler+android抓包工具配置使用

    今天临时增加一个工作,手机需要抓包,查看了不同的抓包工具,最后确定使用fiddler抓包工具进行操作,这里以android为例记录一下工具的配置和使用操作. fiddler的安装 网上有很多fiddl ...

随机推荐

  1. javaSE复习之——线程

    线程其实就是程序执行的一条路径,一个进程中可以包含多条线程,多线程并发执行可以提高程序效率,可以同使完成多项任务 多线程的应用场景 迅雷多线程一起下载 服务器同时处理多个客户请求 多线程原理(单核CP ...

  2. ReadHub项目Kotlin版开发指南(三、MVP架构)

    ReadHub项目Kotlin版转换指南(一.环境搭建) ReadHub项目Kotlin版转换指南(二.数据库和网络请求) ReadHub项目Kotlin版转换指南(三.MVP架构) Android ...

  3. Android中使用AsyncTask

    >##今天写作业用到了AnsyncTask,记录一下自己的使用情况 >###1.Android.os.AsyncTask类 >  1.AsyncTask类对线程间通讯进行了包装,我们 ...

  4. 致敬——C语言

    2016年4月26日21:00      OJ考试平台关闭,C语言这门课程也就随之结束了. 回顾学习历程,坦诚的讲学习期间也努力过也颓废过,但从来没有绝对的放弃过.由于种种客观原因与主观原因导致没有给 ...

  5. c#版阿里云oss上传——基于layui、pupload的oss 后端web端直传的vue组件

    废话前言 去年,做项目用到oss上传,度娘上逛了一圈写了个前后端代码结合的c#版oss上传. 今年又要用到oss上传时发现很难复用,复用改动的范围太大,显然这个轮子不合格.于是想了下,花了一天的时间( ...

  6. 前端的事件冒泡(例如点击一次onclick事件执行两次)解决办法

    问题概要: 当我运用antd 中 radio组件的时候发现radio组件是有bug的 就是你不能给他赋予id 和 value,同时也绑定不上onclick等事件.举个例子: 可以看到 你就算赋予了id ...

  7. LeetCode 162.Find Peak Element(M)(P)

    题目: A peak element is an element that is greater than its neighbors. Given an input array where num[ ...

  8. 关于Spring注解@Component、@Repository、@Service、@Controller @Resource、@Autowired、@Qualifier 解析

    1.Spring 2.5 中除了提供 @Component 注释外,还定义了几个拥有特殊语义的注释,它们分别是:@Repository.@Service和 @Controller 其实这三个跟@Com ...

  9. SpringCloud第二代实战系列:一文搞定Nacos实现服务注册与发现

    一.背景:SpringCloud 生态圈 在正式开始本篇文章之前我们先岔开来讲一下SpringCloud的生态圈. SpringCloud大家都比较熟悉了,它制定了分布式系统的标准规范,做了高度抽象和 ...

  10. linux使用php动态安装模块mysqli.so(ext/mysqlnd/mysqlnd.h: 没有那个文件或目录)

    由于我先安装的php,再安装的mysql! 正常过程: 1.安装mysql 2.安装php configure时带–with-mysql参数 现在我不想重装,因此使用phpize动态安装mysqli, ...