fix: andriod unix socket

This commit is contained in:
levi committed 2022-11-01 10:05:04 +08:00
1 parent 9659176752
commit c1545adeb2
3 files changed
+18 -23

No files matched your search

+11 -11
View File
@@ -23,23 +23,23 @@ class _Client {
if (_instance == null) {
_instance = _Client._internal();
var dio = Dio();
dio.options.baseUrl = "http://${LibgopeedBoot.instance.config.address}";
final isUnixSocket = LibgopeedBoot.instance.config.network == 'unix';
dio.options.baseUrl = isUnixSocket
? 'http://127.0.0.1'
: 'http://${LibgopeedBoot.instance.config.address}';
_instance!.dio = dio;
if(_instance!.dio.httpClientAdapter is DefaultHttpClientAdapter){
if (isUnixSocket) {
(_instance!.dio.httpClientAdapter as DefaultHttpClientAdapter)
.onHttpClientCreate = (client) {
if (LibgopeedBoot.instance.config.network == "unix") {
client.connectionFactory =
(Uri uri, String? proxyHost, int? proxyPort) {
var address = InternetAddress(LibgopeedBoot.instance.config.address,
type: InternetAddressType.unix);
return Socket.startConnect(address, 0);
};
}
client.connectionFactory =
(Uri uri, String? proxyHost, int? proxyPort) {
var address = InternetAddress(LibgopeedBoot.instance.config.address,
type: InternetAddressType.unix);
return Socket.startConnect(address, 0);
};
return client;
};
}
}
return _instance!;
}