Flutterda Proxy Kullanımı
-
Merhaba arkadaşlar,
Flutter ile bir alışveriş uygulamam var ve bu uygulama içerisinden müşteri trendyol sitesine giriyor ve oradan alışveriş yapıyor.
Türkmenistanda Trendyol yasaklandı ve bu durum benim uygulamamı da etkiliyor.Proxy ile çıkış yapmayı deniyorum ama bir türlü başaramadım.
test projem webview ile myip.com'u açıyorum ama ip adresi değişmiyor bir türlü.
Test ettiğim bazı dev paketleri var ama işe yaramadı.
Aşağıdaki sınıf içerisinde de extends yazdım ama yine işe yaramadı.
HttpOverrides.globalBu konuda yardımınızı rica ediyorum.
-
Hocam proxy kodlarını paylaşır mısın? Bir de hangi server (Http) kullanıyorsun?
-
Hocam birçok paket denedim.
Örnek projemin içindeki proxy kullanımını paylaşayım seninle.
https://github.com/OrhanAykac/proxy_test/blob/master/lib/core/proxy_helper.dart
Az önce de http_proxy paketini denedim olmadı yine örnek kod;
HttpProxy httpProxy = await HttpProxy.createHttpProxy();httpProxy.host = "IP";httpProxy.port = "PORT";
HttpOverrides.global = httpProxy;Hetzner üzerinde bir VPS aldım ve squid proxy yi ayağı kaldırdım.
Firefox tarayıcımda proxy yi denedim ve çalışyor hatta myip.com da ip adresim bile değişiyor ama uygulamada olmadı.
-
Aslında webview üzerinde çalışsa yeter benim için
web_view ve InAppWebview içerisinde proxy config bulamadım.
-
https://stackoverflow.com/a/58972125/1022138
burda örnek bir kod var, senin paylastigina benzer is yapiyor, tek fark HttpOverrides 'i override etmisler.
Bir de sertifika güvenligine de bypass etmisler. Belki senin sorunun bu olabilir.
Bu sadece webview icin calisir, global olarak degil.
surda daha detaylisini yapmislar https://medium.com/hoursofoperation/use-charles-proxy-to-debug-network-requests-in-flutter-apps-2f2083275cad
-
unbalanced bunu yazdı
https://stackoverflow.com/a/58972125/1022138
burda örnek bir kod var, senin paylastigina benzer is yapiyor, tek fark HttpOverrides 'i override etmisler.
Bir de sertifika güvenligine de bypass etmisler. Belki senin sorunun bu olabilir.
Bu sadece webview icin calisir, global olarak degil.
surda daha detaylisini yapmislar https://medium.com/hoursofoperation/use-charles-proxy-to-debug-network-requests-in-flutter-apps-2f2083275cad
Hocam benim örnek projede de aynısını yaptım ama işe yaramadı.
Webview içerisinden myip.com a giriyorum ama kendi ip adresimi gösteriyor proxynin kini değil.
Diğer örnekte de aynısını yapıyor aslında biraz geliştirerek.
Edit;
test projeyi sadeleştirdim kafa karışmasın diye.
https://github.com/orhanaykac/proxy_test
edit 2;
github ta şöyle bir yoruma denk geldim.
-
flutterda proxy olayı biraz sıkıntılı. global olarak al bunu kullan diyemiyorsun telefonda ayarlı değilse. webview kısmı içinde özel kurcuklaman gerekiyor galiba. ben geçen gün bir debug işlemi için "http_proxy" paketini şu örnek kod ile main de denedim çalıştı diye hatırlıyorum. istersen sende bir dene:
// HttpProxy httpProxy = await HttpProxy.createHttpProxy();
// httpProxy.host = "10.0.2.2";// replace with your server ip
// httpProxy.port = "8888";// replace with your server port
// HttpOverrides.global=httpProxy; -
maalesef projeyi inceleyecek/deneyecek vaktim yok hocam ama söyle bir browser var https://pub.dev/packages/webviewx
aciklamalarina göre custom proxy eklenebilyior.
5 gün önce biri yazmis dedigin gibi ios simulator'de hata almis
https://github.com/adrianflutur/webviewx/issues/96
belki kodlarini isteyip kendin de inceleyebilirsin.
Ayni kodu farkli cihaz ve simulator'de denemeye calis, belki OS kaynaklidir. O zaman da native ios gelistiricilerinin konularini arastirmak ve flutter wrapper'ini yazmak gerekecek.
-
@TeRRoR hocam onu da denedim.
@Unbalanced hocam,
Akşam evde deneyeceğim.