Загрузите или просмотрите файлы, отправленные как сетевой прокси-инструмент с несколькими запросами (PNG, PDF)?
Как загрузить или просмотреть файлы, отправленные как запрос из нескольких частей (например, PUT) через программный инструмент?
Есть ли способ сделать это с помощью специального инструмента, такого как CharlesProxy на MacOSX, для загрузки и просмотра файлов, которые были отправлены как часть запроса (PUT multipart request). Обычно я проверяю такие проблемы, сохраняя файл в песочнице с помощью изменений кода. В идеале нужно что-то, что может быть использовано нашим QA и не требует никакой модификации кода.
Чарльз-прокси на macos достаточно для большинства нужд разработчиков / разработчиков, таких как: - Дроссельная сеть - Отладка устройства - Загрузка данных ответа - ...
Нет опции для просмотра или загрузки файлов ответов в Charles Proxy 4.x:
Charles Proxy 4.x (и более ранние версии) позволяет сохранять файлы ответов get, например, pdf на этом снимке экрана:
0 ответов
Это можно сделать, отредактировав двоичный файл вручную. Это немного сложно, но можно сохранить файл в виде составного HTTP-запроса без каких-либо изменений в коде проекта.
Вот шаги (проверено на Charles v4.2.8 и macOS v10.12.6):
Сохранить запрос. Щелкните правой кнопкой мыши записанный HTTP-запрос (тот, который отправляет файл) и нажмите "Сохранить запрос...". Это сохранит весь HTTP-запрос в двоичном формате.
Проверьте шестнадцатеричное представление запроса. Щелкните левой кнопкой мыши записанный HTTP-запрос и выберите вкладку "Hex" на панели "Request". Это покажет двоичное представление запроса вместе с некоторым проанализированным текстом.
Отредактируйте сохраненный запрос. Откройте сохраненный запрос (шаг 1) с помощью редактора, поддерживающего двоичный файл, например Sublime Text. Затем удалите весь двоичный код, не являющийся изображением, в соответствии с результатом шага 2. В частности, удалите все байты перед (и включите) первую пустую строку (
0d0a0d0a
в macOS и Windows,0a0a
в Linux) и удалите хвостовые байты. Например, на следующем снимке экрана показаны байты запроса шага 2, выбранные байты будут удалены (обратите внимание на0d0a
байтов, поскольку этот эксперимент проводится на Mac): ...Сохраните файл изображения. Сохраните файл после завершения шага 3. Затем добавьте расширение имени файла в соответствии с
Content-Type
значение на шаге 2. В этом экспериментеContent-Type
являетсяimage/png
, так.png
добавляется к имени файла.
Вот и все. Теперь вы можете открыть файл xxx.png. Это чистый файл изображения.
Примечание: этот эксперимент содержит только 1 файл, но стратегия работает, когда в запросе есть загрузка нескольких файлов.