问题:Android7.0系统,使用fiddler不能抓取https请求

解决方法: 

1.在源码res目录下新建xml目录,增加network_security_config.xml文件

(工程名/app/src/main/res/xml/network_security_config.xml)
 
network_security_config.xml文件内容为:
<network-security-config>
<base-config cleartextTrafficPermitted="true"> <trust-anchors>
<certificates src="system" overridePins="true" />
<certificates src="user" overridePins="true" />
</trust-anchors> </base-config> </network-security-config>
 
说明:certificates说明的src=“system"表示信任系统的CA证书,src=“user"表示信任用户导入的CA证书
 

2.修改项目的AndroidManifest.xml文件,在application中增加android:networkSecurityConfig="@xml/network_security_config"

 
<?xml version="1.0" encoding="utf-8"?>
<manifest ... >
<application android:networkSecurityConfig="@xml/network_security_config"
... >
...
</application>
</manifest>
说明:android:networkSecurityConfig的值指向的就是上一步创建的xml文件
 
3.然后再打包安装apk即可
前提手机已经要安装了fiddler等CA证书哈
 

问题原因:

Android7系统,默认不信任用户导入的CA证书,所以需要配置文件,来信任用户导入的证书
 
 
参考文档:
 
 

Android 7.0解决抓取不到https请求的问题的更多相关文章

  1. 使用Charles抓取APP之HTTPS请求

    Charles是一款非常好用的抓包工具,通常使用它来进行APP开发抓包调试,尤其是HTTPS请求. 一.安装Charles 去官网(https://www.charlesproxy.com/)下载软件 ...

  2. charles 抓取app端 https 请求

    测试需要抓取app的https请求链接,百度了一下教程,能设置的都设置成功了,但就是抓取不成功,显示如下图 无奈之下还是用谷歌搜索了下(网速极慢),但是庆幸的找到了问题的答案,原因还是手机设置的问 打 ...

  3. JMeter -----设置代理抓取web的HTTPS请求,“您的连接不是私密链接”的处理方案

    出现如上截图的问题,已确定将网站的证书.jmeter的证书均安装完成,并未提示报错,但是在配置代理后,刷新网站抓取请求时总是提示如上报错 解决方案: 1.关闭电脑上的所有浏览器 2.打开“终端”运行: ...

  4. fiddler安装及抓取http和https请求

    安装fiddler 安装完成,此时就可以抓取http请求了 如果要抓取https请求,就需要更新fiddler为最新版,并安装证书 1.检查更新fiddler为最新版 2.下载证书并安装 https证 ...

  5. 使用 Fiddler 抓取iPhone 的 HTTPS 请求

    Fiddler 是著名的 HTTP(S) 抓包工具,功能十分强悍.Fiddler 采用代理的方式进行抓包,所以使用范围就非常广泛,不仅可以在 PC 端使用,更可以在移动设备上使用. 要在 iPhone ...

  6. Charles 安装证书后依旧抓取不到https请求的解决方案

    1.打开charles——>help——>SSL proxying——>Install Charles Root Certificate 证书安装后,抓取https的包 2.查看Pr ...

  7. Fiddler - 工具配置及在ios抓取不了https的解决方法

    一.首先,官网下载最新版fiddler工具: https://www.telerik.com/fiddler 二.打开fiddler,点击Tools - Options 我电脑上的各项配置如下图(也可 ...

  8. charles 抓取eclipse中的请求

    charles抓取eclipse中的请求 有时候,想要监测eclipse中发送get获取post请求,一样可以使用代理方式: 1.eclipse代码设置 代码中添加,可以就写在主函数中,然后再调用请求 ...

  9. Fiddler 抓取eclipse中的请求

    Fiddler 抓取eclipse中的请求 代码中添加 System.setProperty("http.proxySet", "true"); System. ...

随机推荐

  1. .Net Web下 Console输出

    .NET winform的时候,一直都是用 Console.Write向控制台输出信息的,但是在Web中是输出不了的. web程序执行时,是被附加到IIS进程的一个单独的AppDomain中的,所以就 ...

  2. sparksql进阶

    scala> val df=spark.read.json("/tmp/pdf1json")df: org.apache.spark.sql.DataFrame = [age ...

  3. JSR303 分組数据验证的使用

    场景:一个Bean ,需要在不同情况下分别做验证 1.依赖:springboot 已经集成 2.定义一个bean (验证对象) import javax.validation.constraints. ...

  4. linux驱动开发第一步hello

    先查看Ubuntu的版本 cat /etc/issue lin@lin-virtual-machine:~$ cat /etc/issue Ubuntu 12.04 LTS \n \l 或者使用 li ...

  5. Vue.js——使用$.ajax和vue-resource实现OAuth的注册、登录、注销和API调用

    转自:https://www.cnblogs.com/keepfool/p/5665953.html 概述 上一篇我们介绍了如何使用vue resource处理HTTP请求,结合服务端的REST AP ...

  6. element——message消息提示

    官方文档:http://element-cn.eleme.io/#/zh-CN/component/message 简单的用法,一句代码搞定.类型有success/warning/info/error ...

  7. AS3 - 对文件和目录的操作

    1,写入到文件 1 2 3 4 5 var fileObj:File = File.documentsDirectory.resolvePath("hangge.txt"); va ...

  8. h5 图片生成

    createImg(store, data) { let timer = setTimeout(function (params) { let _canvas = document.querySele ...

  9. sqoop连接SqlServer2012示例

    sqoop import --connect 'jdbc:sqlserver://192.168.xx.xx:1433;username=sa;password=xxxx;database=WindE ...

  10. centos 卸载mysql

    1 删除Mysql yum remove  mysql mysql-server mysql-libs mysql-server; find / -name mysql 将找到的相关东西delete掉 ...