Feed/Account

Материал из Simple Chat
Перейти к: навигация, поиск
 
 
 
Справка » Фиды
 
 
 

Содержание

[править] Описание

Фид account представляет собой прокси-фид к аккаунту пользователя. Предоставляет информацию о зарегистрированном имени пользователя и его группах. Этот фид обязателен и включён в основной протокол.

[править] Формат

Типичное тело фида без заголовка.

{
  "account":
  {
    "account": "impomezia",
    "groups":
    [
      "registered"
    ]
  }
}

[править] Права доступа

По умолчанию фид доступен для чтения для всех пользователей.


[править] Запросы

[править] reg

Запрос на регистрацию, правами на этот запрос обладает только пользователь, которому принадлежит этот фид.

[править] Пример запроса

{
  "action": "reg",
  "name": "admin",
  "pass": "WGZXOOQFYDWQC5TYPJHRK5H7AB27OUQ6OA"
}

В это примере создаётся запрос на регистрацию пользователя admin с паролем qwerty. Пароль на сервер не передаётся, он хешируется в SHA1 к нему добавляется 1 байт 0x70 и затем кодируется в Base32. Запрос также может содержать поля q и a для идентификаторов секретного вопроса и ответа на него, формат идентификаторов SHA1 от текста вопроса или ответа плюс байт 0x6D и приведение к текстовому виду с помощью Base32.

[править] Ответ при успешной регистрации

{
  "action": "reg",
  "name": "admin"
}

Также клиенту будет отослано тело фида и всем подписчикам пользователя отравлен заголовок. Поле name содержит зарегистрированное имя пользователя.

[править] Коды ошибок

Код ошибки Описание
400 Bad Request Некорректной запрос или пользователь уже зарегистрирован.
404 Object Already Exists Запрашиваемое имя для регистрации уже занято.
500 Internal Error Другая внутренняя ошибка сервера.


[править] reset

Запрос на сброс пароля, правами на этот запрос обладает только пользователь, которому принадлежит этот фид. Формат запроса и ответа в случае успеха, полностью аналогичны запросу reg за исключением того что значение поля action изменяется на reset и в запросе в поле pass находится новый пароль.

[править] Коды ошибок

Код ошибки Описание
400 Bad Request Некорректной запрос или пользователь уже авторизирован.
401 Unauthorized Любая ошибка связанная с некорретным секретным вопросом или ответом на него.
403 Not Found Пользователь с указанным именем отсутсвует на сервере.
500 Internal Error Другая внутренняя ошибка сервера.


[править] login

Запрос на авторизацию, правами на этот запрос обладает только пользователь, которому принадлежит этот фид.

[править] Пример запроса

{
  "action": "login",
  "name": "admin",
  "pass": "WGZXOOQFYDWQC5TYPJHRK5H7AB27OUQ6OA"
}

[править] Ответ при успешной авторизации

{
  "action": "login",
  "cookie": "O27MBNI4WKQ4CKTZB7W7THHCO7IYDO3TIM",
  "nick": "imp"
}

Поле nick содержит ник зарегистрированного пользователя, поле cookie - Base32 кодированный идентификатор Сookie. После получения этого ответа клиент отключается от сервера устанавливает новый Сookie и ник и после этого заново подключается к серверу.

[править] Коды ошибок

Код ошибки Описание
400 Bad Request Некорректной запрос или пользователь уже авторизирован.
402 Forbidden Неверный пароль.
403 Not Found Пользователь с указанным именем отсутсвует на сервере.
500 Internal Error Другая внутренняя ошибка сервера.


[править] password

Запрос на изменение пароля или секретного вопроса.

[править] Пример запроса

{
 "action": "password",
 "new": "4XU7UG5DD3GRV2CPOXFKUR2PHJTD6BPUOA",
 "pass": "WGZXOOQFYDWQC5TYPJHRK5H7AB27OUQ6OA"
}

В поле pass передаётся текущей пароль, в поле new новый пароль, также могут передаваться поля q и а для передачи нового секретного вопроса и ответа на него.

[править] Ответ в случае успеха

Ответ содержит только одно поле action со значением password.

[править] Коды ошибок

Код ошибки Описание
400 Bad Request Некорректной запрос или пользователь не передал старый пароль.
401 Unauthorized Пользователь не авторизирован.
402 Forbidden В случае если пользователь передал неверный пароль.
500 Internal Error Другая внутренняя ошибка сервера.
Личные инструменты
Пространства имён
Варианты
Действия
Навигация
загрузить
разработка
Инструменты