feat: 代理设置

This commit is contained in:
guozhigq
2023-09-03 13:46:51 +08:00
parent b9b1ac7ec5
commit aa63007c8a
5 changed files with 44 additions and 0 deletions

26
lib/utils/proxy.dart Normal file
View File

@ -0,0 +1,26 @@
import 'dart:io';
import 'package:system_proxy/system_proxy.dart';
class CustomProxy {
init() async{
Map<String, String>? proxy = await SystemProxy.getProxySettings();
if (proxy != null) {
HttpOverrides.global = ProxiedHttpOverrides(proxy['host']!, proxy['port']!);
}
}
}
class ProxiedHttpOverrides extends HttpOverrides {
final String _port;
final String _host;
ProxiedHttpOverrides(this._host, this._port);
@override
HttpClient createHttpClient(SecurityContext? context) {
return super.createHttpClient(context)
// set proxy
..findProxy = (uri) {
return "PROXY $_host:$_port;";
};
}
}