Обновлена документация по серверу авторизации

This commit is contained in:
ErickSkrauch 2015-08-23 20:25:18 +03:00
parent 4568bdd206
commit 4dd6829abf
2 changed files with 32 additions and 17 deletions

View File

@ -15,8 +15,8 @@
Для компиляции вам понадобится установленный Python 2.7 (теоретически будет работать и на 3.4, но мы не проверяли) и
менеджер зависимостей pip. Убедитесь, что они доступны глобально.
Для начала форкните и склонируйте этот репозиторий к себе на компьютер. За тем установите зависимости. Для этого
находясь в папке проекта откройте консоль и выполните:
Для начала форкните и склонируйте этот репозиторий к себе на компьютер. За тем установите зависимости. Для этого,
находясь в папке проекта, откройте консоль и выполните:
```
pip install -r requirements.txt

View File

@ -9,14 +9,14 @@
Общие положения
===============
* Все запросы должны выполняться на URL **http://minecraft.ely.by**.
* Все запросы должны выполняться на URL **https://authserver.ely.by**.
* При успешном запросе, сервер вернёт ответ со статусом 200. Любой другой код свидетельствует об ошибке.
* Сервер всегда отвечает JSON данными, кроме случаев системных ошибок. Учитывайте это для отображения пользователю правильного
сообщения об ошибке.
* Сервер всегда отвечает JSON данными, кроме случаев системных ошибок и ответов на legacy запросы. Учитывайте это для
отображения пользователю правильного сообщения об ошибке.
* В случае предусмотренной ошибки, вы получилите следующие данные:
* В случае стандартной ошибки, вы получилите следующие данные:
.. code-block:: javascript
@ -28,7 +28,7 @@
Предусмотренные ошибки
~~~~~~~~~~~~~~~~~~~~~~
В отличие от оригинального протокола, на Ely применяется меньший зоопарк ошибок
В отличие от оригинального протокола, на Ely применяется меньший зоопарк ошибок:
.. list-table::
:widths: 20 50 30
@ -37,9 +37,6 @@
* - Ошибка (error)
- Причина
- Решение
* - Not Found
- Вы выполнили запрос на неизвестный URL или отправили POST запрос туда, где ожидался GET.
- Внимательно прочитайте документацию по запросу, который вы выполняете.
* - IllegalArgumentException
- Вы передали неполный список данных для выполнения запроса.
- Внимательно перепроверьте что вы шлёте в запросе и что указано в документации.
@ -47,6 +44,8 @@
- Пользователь ввёл/разработчик передал неверные значения.
- Необходимо вывести пользователю уведомление о неправильно введённых данных.
Для индикации ошибки Not Found используется ответ с 404 статусом.
Авторизация в лаунчере
======================
@ -124,23 +123,39 @@ accessToken для игрового клиента Minecraft. Важно пон
.. function:: /auth/validate
Этот запрос позволяет проверить валиден ли указанный accessToken или нет. Этот запрос не обновляет токен и его время
жизни, а только позволяет удостовериться, что он ещё действительный.
жизни, а только позволяет удостовериться, что он ещё действительный. При отправке устаревшего токена, будет выведено
соответствующее сообщение, а сам токен будет удалён из базы.
Входные параметры:
:accessToken: Уникальный ключ, полученый после авторизации.
Успешным ответом будет являться любой результат, не содержащий в себе поля **error**. В `оригинальной документации
<http://wiki.vg/Authentication#Validate>`_ не сказано, что в итоге должен вернуть этот запрос, так что ориентируйтесь
на поле **error** в теле ответа.
Успешным ответом будет являться пустое тело. Ориентируйтесь на поле **error** в теле ответа.
.. function:: /auth/signout
Не реализовано.
Этот запрос позволяет выполнить инвалидацию всех выданных пользователю токенов.
Входные параметры:
:username: Никнейм пользователя или его e-mail (более предпочтительно).
:password: Пароль пользователя.
Успешным ответом будет являться пустое тело. Ориентируйтесь на поле **error** в теле ответа.
.. function:: /auth/invalidate
Не реализовано.
Запрос позволяет инвалидировать accessToken. В случае, если переданный токен не удастся найти в хранилище токенов,
ошибка не будет сгенерирована и вы получите успешный ответ.
Входные параметры:
:accessToken: Уникальный ключ, полученый после авторизации.
:clientToken: Уникальный идентификатор клиента, относительно которого получен accessToken.
Успешным ответом будет являться пустое тело. Ориентируйтесь на поле **error** в теле ответа.
Авторизация на сервере
======================