Я пытаюсь перехватить https-запросы от эмулятора Android (qemu из Android Studio), работающего на моей машине разработчика. Я запустил эмулятор с параметром командной строки -http-proxy localhost:8888, чтобы указать на работающий на компьютере Fiddler, скопировал корневой сертификат Fiddler на виртуальную SD-карту и установил его. HTTP-трафик фиксируется идеально, но все https-запросы завершаются неудачно и отображаются в Fiddler как:
Запрос:
Код: Выделить всё
CONNECT (dest IP address here):443 HTTP/1.1
Host: (dest IP address here):443
Ответ:
Код: Выделить всё
HTTP/1.1 200 Connection Established
FiddlerGateway: Direct
StartTime: 10:39:08.556
Connection: close
Я читал в другом месте об установке корневого сертификата, перейдя по адресу
http://ipv4.fiddler:8888/FiddlerRoot.cer в браузере, но это не помогло:
Код: Выделить всё
HTTP/1.1 405 Method Not Allowed
Date: Wed, 17 Aug 2016 09:43:14 GMT
Content-Type: text/html; charset=UTF-8
Connection: close
Cache-Control: no-cache, must-revalidate
Timestamp: 10:43:14.490
This endpoint does not support HTTP CONNECTs. Try GET or POST instead.
Я получаю тот же ответ при попытке использовать IP-адрес хоста вместо ipv4.fiddler. Я также не могу открыть страницу службы Fiddler Echo в браузере эмулятора, но она отлично работает в браузере хоста.
Я был бы очень признателен, если бы кто-нибудь указал, где я здесь ошибаюсь, у меня заканчиваются идеи!
Подробнее здесь:
https://stackoverflow.com/questions/389 ... d-emulator