flutter dio 抓包
1、第一種
寫一個頁面,輸入ip地址和端口號,傳給dio設(shè)置里
(_dio.httpClientAdapter as DefaultHttpClientAdapter).onHttpClientCreate = (HttpClient client) {
client.idleTimeout = const Duration(seconds: 5);
client.findProxy = (uri) {
return "PROXY ${ip地址}:${端口號}";
};
//代理工具會提供一個抓包的自簽名證書,會通不過證書校驗,所以我們禁用證書校驗
client.badCertificateCallback = (X509Certificate cert, String host, int port) => true;
return null;
}
2、第二種
引入http_proxy: ^1.2.0第三方庫,可獲取代理信息
HttpProxy proxy = await HttpProxy.createHttpProxy();
debugPrint("PROXY=${proxy.host}");
if (proxy.host != null) {
(_dio.httpClientAdapter as DefaultHttpClientAdapter).onHttpClientCreate = (HttpClient client) {
client.idleTimeout = const Duration(seconds: 5);
client.findProxy = (uri) {
return "PROXY ${proxy.host}:${proxy.port}";
};
//代理工具會提供一個抓包的自簽名證書,會通不過證書校驗,所以我們禁用證書校驗
client.badCertificateCallback = (X509Certificate cert, String host, int port) => true;
return null;
};
}