Если не показывает видео в диспуте на AliExpress: подменяем crossdomain.xml с помощью Charles

· На чтение уйдёт 2 минуты · (272 слова)

Столкнулся недавно с занятной проблемой. На  возник спор с продавцом. Продавец продаёт набор для превращения матрицы от ноутбука (LVDS) в полноценный монитор (HDMI, VGA, прочее). К сожалению, при подключении к моей матрицы, она начинает переключаться между белым, красным, зелёным и синим цветом. Дело, вероятно, не в блоке питания: я пробовал блоки питания 12V 2A, 12V 3A, 12V 8A. Всё одно и то же. Пробовал подключаться к Linux и Windows 7, тоже всё одинаково печально. В общем, залил своё видео и обнаружил, что я сам его не могу посмотреть. Ну, понадеялся на то, что у продавца всё хорошо.

Судя по всему, у продавца всё хорошо. Ведь он мне отвечает, что это я дятел и надо сделать вот так (см. видео). Пытаюсь посмотреть его видео — тоже ничего не получается. Решение проблемы оказалось довольно простым (для технически подкованного человека), и делается с помощью trial версии Charles (30 минут достаточно).

Оказалось, что дело в crossdomain.xml. Даже в двух файлах crossdomain.xml. Для этого я поступил так: в Charles нашёл запросы к  и к . Один из этих файлов в моём случае вообще отсутствовал, другой не разрешал подключения с aliexpress.com. Поэтому я поставил на них breakpoint в Charles, почистил кэш в Firefox, открыл эти xml повторно в новых вкладках, ну и Ctrl+F5, конечно.

В Charles подменяю ответы на следующий текст (вместе с заголовками, RAW):

HTTP/1.1 200 OK
Server: Tengine
Date: Wed, 24 Feb 2016 17:46:03 GMT
Content-Type: text/xml
Transfer-Encoding: chunked
Connection: keep-alive
Last-Modified: Tue, 23 Apr 2013 09:19:46 GMT
Vary: Accept-Encoding
Timing-Allow-Origin: *
<?xml version="1.0" encoding="UTF-8"?>
<cross-domain-policy>
	<allow-access-from domain="*"/>
</cross-domain-policy>

Так вот, браузер закэшировал вот такие подменённые xml, затем открываем видео и всё просто работает.

Полезное