Charles Proxy для Genymotion останавливает трафик 10.0.3.2 localhost

Я прочитал все темы по этой теме, и инструкции по настройке Чарльза с genymotion одинаковы:

http://rexstjohn.com/using-genymotion-charles-proxy/

In your Genymotion Android emulator…
Settings -> Wifi -> Press and hold your active network
Select “Modify Network”
Select “Show Advanced Options”
Select “Proxy Settings -> Manual”
Set your Proxy to: 10.0.3.2 (Genymotion’s special code for the local workstation)
Set your Port to: 8888
Press Save

моя настройка:

  1. сервер весны развития localhost, работающий на моем Mac OS
  2. android-приложение, установленное на моем эмуляторе genymotion. Эмулятор genymotion взаимодействует с моим локальным dev-сервером через ip 10.0.3.2 (как получить доступ к localhost из эмулятора Genymotion android?)

Я не уверен, что инструкции старые, но проблема в том, что трафик, который течет из моего эмулятора genymotion, записывается в прокси-сервере Charles, но он просто не достигает моего сервера localhost. Я не использую SSL-шифрование между моим сервером и моим приложением.

Это мои настройки внутри genymotion wifi экран:

enter image description here

вот как выглядит мой прокси-сервер Charles - вы можете видеть, что это"подключение к удаленному хосту". Он подключается навсегда, а затем в конечном итоге дает мне ошибку 503 на моей стороне приложения android, и ничего не возвращается:

enter image description here

Если я выключу Charles Proxy, приложение подключается к моему серверу localhost без проблем, и все вызовы возвращаются успешно. Я думаю, что это что-то делать с Чарльзом, который останавливает мое приложение от общения с моим сервером localhost.

в Postman, если я попытаюсь запросить тот же url, что и мое приложение android, оно работает успешно, и результаты также успешно регистрируются в Charles:

http://localhost:8443/ + my api endpoint **OR** http://localhost.charlesproxy.com:8443/ + my api endpoint

единственная разница между запросом в Postman и запросом в моем приложении для android заключается в том, что мое приложение попадает на этот url 10.0.3.2, потому что я работаю с эмулятор:

http://10.0.3.2:8443/ + my api endpoint

Я также добавил 10.0.3.2 в Мои настройки контроля доступа:

enter image description here

Я могу зайти в свой интернет-браузер эмулятора Android genymotion и искать такие сайты, как www.msn.com и он вернется успешно плюс войти результаты в Чарльз, но я не ищу или готовы заплатить 50 долларов США за инструмент для записи моего Android трафика браузера. Мне нужно, чтобы он работал с моим Android-приложением, чтобы я мог отлаживать свое приложение. Я не уверен, как это исправить, кто-нибудь знает, если я что-то упускаю?

EDIT:

в случае, если кому-то интересно, я прочитал этот пост в FAQ Чарльза о трафике Localhost не появляется в Charles:

https://www.charlesproxy.com/documentation/faqs/

но я не могу изменить 10.0.3.2, используемый Genymotion на http://localhost.charlesproxy.com/ вместо этого я не думаю это решило бы мою проблему.

1 ответов


Итак, я играл с эмулятором Genymotion и Чарльзом сейчас, и мне действительно удалось заставить Чарльза записывать трафик localhost.

подобно тому, как я запросил через почтальона:

http://localhost.charlesproxy.com:8443/ + my api endpoint

Я только что изменил хост-часть всех моих конечных точек api на:http://localhost.charlesproxy.com:8443/ и это сработало.