Echolot
Запросы

Тело запроса

Отправляйте в теле HTTP-запроса JSON, формы, multipart-загрузки, GraphQL, текст, XML, HTML или целый файл.

Вкладка Тело задаёт то, что запрос отправляет после заголовков. Выберите тип в строке вверху вкладки; редактор ниже изменится соответствующим образом. Если у запроса есть тело, на вкладке видна точка.

Вкладка «Тело» запроса Create order с выбранным JSON, строками заказа в редакторе и кнопкой «Форматировать» справа

Типы тела

ТипЧто отправляетсяContent-Type, который добавляет Echolot
НетТела нет.Нет
JSONТекст из редактора.application/json
URL-encodedПары «имя — значение», как отправляет веб-форма.application/x-www-form-urlencoded
MultipartТекстовые поля и файлы, как отправляет веб-форма с загрузкой файла.multipart/form-data с границей
GraphQLТекст запроса как есть.application/graphql
ИсходныйТекст, XML или HTML, выбираются во второй строке чипов.text/plain, application/xml или text/html
ДвоичныйФайл байт в байт.Нет

Content-Type показан в разделе АВТОМАТИЧЕСКИЕ на вкладке Заголовки. Чтобы отправить другой, добавьте собственный заголовок Content-Type; он заменит заголовок Echolot. Заголовки длины и разбиения на части вычисляются при отправке запроса.

Любое текстовое тело может содержать {{variables}} и динамические значения, которые подставляются при отправке:

{
  "lines": [{ "sku": "{{productId}}", "quantity": 1 }],
  "note": "Sent at {{$isoTimestamp}}"
}

JSON

Введите или вставьте JSON в редактор. В нём есть номера строк, подсветка синтаксиса и список {{ для переменных.

Нажмите Форматировать, чтобы расставить отступы в JSON. Переменные остаются как написаны, поэтому {{productId}} в строке или как отдельное значение не затрагивается. В узкой области на кнопке остаётся только волшебная палочка.

Чтобы попробовать, откройте Orders › Create order в примере Alpenglow и посмотрите на его тело или отправьте Echo › Echo anything, который возвращает полученное тело.

URL-encoded

Поля находятся в таблице из КЛЮЧ и ЗНАЧЕНИЕ, как заголовки:

  • Нажмите Добавить поле, чтобы добавить его. Отмеченные поля отправляются; неотмеченные сохраняются, но не отправляются.
  • Нажмите Правка текстом, чтобы изменить все поля как текст, по одному Name: value в строке, а // перед полем означает, что оно выключено.

Echolot кодирует имена и значения при отправке, в том числе то, что подставляет переменная, поэтому +, & или пробел в значении доходят как есть.

Multipart

Каждая строка — одна часть формы:

  1. Отметьте флажок, чтобы отправлять поле.
  2. Введите имя.
  3. Выберите Текст или Файл.
    • Для Текст введите значение. Оно может содержать {{variables}}.
    • Для Файл нажмите Выбрать… и выберите файл. Поле без имени берёт имя файла без расширения. Часть несёт имя файла как filename.
  4. При желании введите тип содержимого части, например image/png. Если оставить пустым (type (auto)), файл получит его по расширению (.json, .png, .pdf и так далее, иначе application/octet-stream), а текстовое поле — никакого.

Нажмите Добавить поле для ещё одной строки и кнопку −, чтобы удалить строку. Файлы читаются с диска потоком при отправке запроса, поэтому большая загрузка не обязана помещаться в память.

GraphQL

GraphQL отправляет текст запроса как тело с Content-Type: application/graphql — для серверов, принимающих запрос таким образом. Для полноценного клиента GraphQL с переменными, дополнением по схеме, обозревателем схемы и подписками создайте вместо этого Новый запрос GraphQL. См. GraphQL.

Исходный: текст, XML и HTML

Выберите Исходный, затем Текст, XML или HTML в строке рядом. Редактор подсвечивает XML и HTML, а Content-Type следует вашему выбору.

Двоичный: файл

Выберите Двоичный, затем Выбрать файл… и укажите файл для отправки. Вкладка показывает его имя, размер и путь; Выбрать другой файл… заменяет его. Файл читается с диска при каждой отправке запроса, каким бы большим он ни был, поэтому запрос всегда отправляет файл в его нынешнем виде. Пока файл не выбран, ничего не отправляется.

Версия из Mac App Store

Версия из App Store может читать только файлы, которые вы выбрали. Файл, выбранный на вкладке Тело, остаётся доступным для последующих отправок. Если запрос называет файл, которого приложению не давали (например, выбранный коллегой на его Mac), отправка останавливается, а область ответа предлагает Разрешить доступ…: выберите файл, и запрос отправится снова.

Сравнить версии

Где сохраняются тела

Введённое тело сохраняется в отдельном файле рядом с запросом, например create-order.body.json рядом с create-order.req.toml, так что в Git оно читается хорошо. Двоичное тело сохраняется как путь к файлу. См. Файлы рабочего пространства.

Большие тела

Двоичные и multipart-файлы читаются с диска потоком при отправке запроса, поэтому загрузки любого размера уходят без загрузки в память. Ответы — отдельный вопрос: они записываются на диск по мере поступления и остаются быстрыми в просмотрщиках даже при сотнях мегабайт. См. Ответы.

На этой странице