Идентификация и аутентификация.Signin

Материал из Hivext Wiki

Перейти к: навигация, поиск

Содержание

Метод Signin

Общая информация

Параметр Значение
Описание Аутентификация пользователя. После успешной аутентификации создается длинная защищенная сессия. Сессия завершается вызовом метода Signout.
Адрес метода http://api.hivext.ru/1.0/users/authentication/{протокол}/signin
Метод сервиса Идентификация и аутентификация

Параметры

Имя параметра Тип Описание
Входящие параметры
appid string [*] Идентификатор приложения.
login string [*] Почтовый адрес, который пользователь указывал при регистрации (указывается пользователем), или цифровой идентификатор пользователя, присвоенный платформой после регистрации.
password string [*] Пароль, который пользователь указывал при регистрации (указывается пользователем).
Возвращаемые параметры
result int Коды ошибок
501 Неверный формат почтового адреса
503 Почтовый адрес не существует
701 Ошибка аутентификации
703 Пользователь не существует
704 Пользователь заблокирован
error string Описание ошибки, если она произошла.
session string Идентификатор сессии. Идентификатор сессии защищен специальным алгоритмом, что делает его бесполезным в случае перехвата.

Пользовательская сессия действительна в пределах одного приложения, это означает если сессия была получена под одним идентификатором приложения, то под другим она недействительна и все вызовы методов будут возвращать код ошибки 702 (пользователь не аутентифицирован). Чтобы таже самая сессия стала действительна и для других идентификаторов приложений необходимо воспользоваться методом AllowAppAccess. Используйте расширение области действительности сессии только если это необходимо.

uid int Идентификатор пользователя.
name string Имя пользователя, если было указано.

Примеры

JavaScript

Асинхронный вызов метода Signin

<div id="signin_block">
    <input id="email" /><br />
    <input id="password" type="password" /><br />
    <input id="signin" value="Sign In" type="button" />
</div>

var id = function(element) { return document.getElementById(element); }

id("signin").onclick = function() {

    Users.Authentication.Signin(appid, id("email").value, id("password").value, function(oResponse) {
        if(oResponse.result === 0) {
            id("signin_block").style.display = "none";
            alert("Session identificator: " + oResponse.session);
        } else {
            alert("Code: " + oResponse.result + "\nError: " + oResponse.error)
        }
    });

}

Личные инструменты