Подтвердить что ты не робот

Fiddler добавляет данные двоичного файла в POST

Я пытаюсь добавить данные двоичного файла непосредственно в тело запроса POST-запроса, чтобы смоделировать загрузку файла. Тем не менее, я попытался установить точку останова "перед запросом" и использовать "файл вставки", но я не мог заставить это работать. Я также попытался изменить CustomRules.js, чтобы вставить файл, но не мог понять, как загружать двоичные данные через JScript. Есть ли здесь простое решение?

4b9b3361

Ответ 1

Я уверен, что это новая функция в течение года с момента ответа на этот вопрос, но я подумал, что добавлю ее в любом случае:

Там синяя ссылка "[Загрузить файл]" в Composer теперь находится с правой стороны в текстовом поле URL. Это создаст полный запрос multipart/form-data. Если вы используете это, вы заметите, что в теле теперь есть что-то похожее на это:

< @INCLUDE C:\Some\Path\my-image.jpg @ >

В моем случае я просто хотел получить POST двоичный файл напрямую без мультикана, поэтому я просто поместил магию < @INCLUDE... @ > в тело запроса и отправил двоичный файл как тело.

Ответ 2

Чтобы отправить multipart/form-data​​strong > , этому получателю будет помогать.

На верхней панели (заголовок Http) установите Content-Type, как показано ниже. Другие значения автоматически разрешаются.

Content-Type: multipart/form-data; boundary=-------------------------acebdf13572468

И, введите Body Response на нижеприведенной панели следующим образом.

---------------------------acebdf13572468
Content-Disposition: form-data; name="description" 

the_text_is_here
---------------------------acebdf13572468
Content-Disposition: form-data; name="file"; filename="123.jpg"
Content-Type: image/jpg

<@INCLUDE *C:\Users\Me\Pictures\95111c18-e969-440c-81bf-2579f29b3564.jpg*@>
---------------------------acebdf13572468--

Правила импорта:

  • Content-Type должен иметь еще два знака -, чем граничные слова в теле.
  • Последний из тела должен быть завершен двумя знаками -.

Ответ 3

В Fiddler script: (в Fiddler: Rules... Customize Rules) найдите функцию OnBeforeRequest и добавьте строку, похожую на:

if (oSession.uriContains("yourdomain"))
{
    oSession.LoadRequestBodyFromFile("c:\\temp\\binarycontent.dat");    
}

Ответ 4

начиная с версии 2.0, в Тело запроса есть ссылка "Загрузить файл...", которая позволяет отправлять/выгружать двоичные данные.