admin 管理员组文章数量: 887021
最近有一个合作商,所有的操作只能用手机登录App操作,特别是打字文本编译,比电脑累太多了,为了发扬如何偷懒,决定把App内网页转到PC上,Let’s go.
查了一下知乎上都没有理想的解答,我动手写一个吧,作为我的处女作。
一、工具选择:Fiddler,因为太多人推荐用。
时间2017-7-23,
可以打开官网上,下载页面和方式如下:
1.1,打开浏览器,输入网址;
1.2,光标移到菜单“PRODUCTS”上,出现半屏下拉菜单;
1.3,打到子菜单“FREE TOOLS”下面的“Fiddler”进入Fiddler页面;
1.4,点击下图中的橙色“Free download”进入下载页面。
1.5,会有一个问题,问你计划使用做什么,随便选一项,第二行写入自己的邮箱,下面的选项Box打上勾,我是Mac系统,Web自动检测下载Mac版本。
如果你是Windows可以点左下角进入Windows下载页面。
1.6,然后系统会自动下载,如果没有自动下载,也可以手动点链接下载。
二、Mac的运行环境下载安装:
下载后直接运行,发现找来找去一堆EXE文件,这不是搞笑嘛,我以为下错了,又重下了一次,好好检查了一下,就是这个EXE,不好的预感来了,果然要配置运行环境。
2.1,需要下载并安装Mono来运行这款软件的。
经过半天下载,下载好一个pkg文件
双击安装
下一步一直点,有需要问的,都同意,大约3分钟。
如果你问我安装软件过程你不会,你可以狗带了。
2.2,安装好Mono到Mac后,需要打开终端运行命令
/Library/Frameworks/Mono.framework/Versions//bin/mozroots --import —sync
因为Mono的framework有自己授权的认证书,安装软件后证书是空的,需要手动添加进去。
这一步并不容易,因为代码中间“”是要你手动改的,怎么改呢,操作如下:
1,打开电脑的终端Terminal;
2,先复制代码/Library/Frameworks/Mono.framework/Versions//bin/mozroots --import --sync,会报错"-bash: Mono: No such file or directory",不要急。
3,输入cd /Library/Frameworks/Mono.framework/Versions/,回车,这样可以进入版本的目录,因为版本会升级后改变目录名,所以第一步会找不到目录。
4,接着输入显示文件命令 “ls”,
5,看到版本号后,记住这个名字,(本样例是“5.0.1”),然后把第一个代码里“”改成“5.0.1”代码如下
Logway$ /Library/Frameworks/Mono.framework/Versions/5.0.1/bin/mozroots --import —sync
6,把改过后的代码再输入一次,回车,看到在执行的信息,表示OK啦。
2.3,解压刚刚下载的fiddler-mac.zip到有权限的文件夹中。
我是放在download下面,新建 一个dev文件夹
然后,右击文件夹“Get Info”,看文件的目录。
选中路径,右点复制下来。
2.4,在Mac的终端输入 "mono Fiddler.exe" 运行程序。
打开系统内的软件
我输后没有反应,后来crl+c退来又重复输入一次,有反应了。(也可能我太急了,没耐心等)
会出现对话框输入系统密码。就可以看到运行界面啦。
终于进入主界面啦
三、开始干活,先设置软件
打开程序主界面后,菜单“Tools”=>”Options"
选中"Decrpt HTTPS traffic", Fiddler就可以截获HTTPS请求
选中"Allow remote computers to connect". 是允许别的机器把HTTP/HTTPS请求发送到Fiddler上来
四、现在设置手机
(1) 网络代理设置
安装Fiddler的机器,跟iPhone 必须在同一个网络里, 否则iPhone不能把HTTP发送到Fiddler的机器上来。一般情况,我手头上是笔记本机和手机,所以和手机不在同一个网络,如果你是台式机,就需要设置代理了
先查看本机的局域网,可以看到我自己机器的IP地址是192.168.0.166
然后手机上进入WiFi,设置代理,让手机流量都通过电脑上的8888端口,IP打开iPhone, 找到你的网络连接, 打开HTTP代理, 输入Fiddler所在机器的IP地址(比如:192.168.1.104) 以及Fiddler的端口号8888
手机上Fiddler证书安装
这一步是为了让Fiddler能捕获HTTPS请求。 如果你只需要截获HTTP请求, 可以忽略这一步
1. 首先要知道Fiddler所在的机器的IP地址: 我安装了Fiddler的机器的IP地址是:192.168.0.166
2. 打开IPhone 的Safari, 访问 http://192.168.0.166:8888, 点"FiddlerRoot certificate" 然后安装证书
这时候可以在Fiddler里看到,有设备访问192.168.0.166:8888,并下载了cer证书。
现在大功告成,可以抓包了。iPhone上的应用(比如Safari, Firefox, Itunes, App Store)发出的HTTP/HTTPS都可以被Fiddler获取。
实例: 打开Safari,
看到下面蓝字部分的网址,说明成功截获了。
是不是HTTP和HTTPS都截获到了?, 你不但能截获, 还可以下断点,修改Request, 修改Response, Do what you want.
四、注意事项
(1) 用完了, 记得把IPhone上的Fiddler代理关闭, 以免IPhone上不了网。
(2) 只能捕获HTTP,而不能捕获HTTPS的解决办法
有时候会发现, Fiddler 只能捕获IPhone发出得HTTP请求, 而不能捕获HTTPS请求, 原因可能是证书没有安装好。 解决办法是:
1. 先把IPhone上所有的Fiddler证书删除 (拿出IPhone, 点”设置“->“通用”->"描述文件")
2. 安装上面的方法,重新安装Fiddler证书
版权声明:本文标题:安卓手机能提取当前页面的链接吗_如何获取一个app内的网页地址? 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1726385983h950119.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论