Skip to content

Instantly share code, notes, and snippets.

@davidmz
Last active April 30, 2016 15:39
Show Gist options
  • Save davidmz/8b060fa2a0ca6e2fe93828b73d7a5c2b to your computer and use it in GitHub Desktop.
Save davidmz/8b060fa2a0ca6e2fe93828b73d7a5c2b to your computer and use it in GitHub Desktop.
Pragmatic JSON API

Запросы к API производятся методами GET (безопасные операции, не меняющие состояния сервера) и POST (все остальные + те, которым мешают ограничения GET).

Параметры запроса передаются как GET-параметры и/или как JSON-encoded тело POST-запроса.

Ответ сервера может быть двух типов: успех или ошибка. В обоих случаях используется HTTP-статус "200 OK". Ответ всегда представляет собой JSON-объект с обязательным полем status имеющим значение "ok" или "error".

Формат ответа «успех»:

{
  status: "ok",
  data: … // {any} произвольные данные ответа
}

Формат ответа «ошибка»:

{
  status: "error",
  code: 123, // {int} код ошибки
  message: "error #123" // {string} строковое описание ошибки
}

Коды и сообщения ошибок не стандартизированы и определяются приложением.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment