Страница 1 из 1

Как получить данные о пользователе?

Добавлено: 2017.12.12, 02:58
user
В документации сказано:
В отличие от Web-приложений, RESTful API обычно не сохраняют информацию о состоянии, а это означает, что сессии и куки использовать не следует. Следовательно, раз состояние аутентификации пользователя не может быть сохранено в сессиях или куках, каждый запрос должен приходить вместе с определенным видом параметров аутентификации. Общепринятая практика состоит в том, что для аутентификации пользователя с каждым запросом отправляется секретный токен доступа.
В данном контексте я так понял не будут работать стандартные методы получения данных текущего пользователя, как можно реализовать в контексте rest?

Re: Как получить данные о пользователе?

Добавлено: 2017.12.12, 07:20
ElisDN
Булет тот же Yii::$app->user. Только используется BearerAuth по findByAccessToken.

Re: Как получить данные о пользователе?

Добавлено: 2017.12.12, 20:48
user
спасибо!
если делаю Yii::$app->user, он возвращает типа такого:

Код: Выделить всё

{
    "identityClass": "potok\\modules\\v1\\models\\User",
    "enableAutoLogin": false,
    "enableSession": false,
    "loginUrl": [
        "site/login"
    ],
    "identityCookie": {
        "name": "_identity",
        "httpOnly": true
    },
    "authTimeout": null,
    "accessChecker": null,
    "absoluteAuthTimeout": null,
    "autoRenewCookie": true,
    "idParam": "__id",
    "authTimeoutParam": "__expire",
    "absoluteAuthTimeoutParam": "__absoluteExpire",
    "returnUrlParam": "__returnUrl",
    "acceptableRedirectTypes": [
        "text/html",
        "application/xhtml+xml"
    ]
}
если Yii::$app->user->id то он возвращает действительно id пользователя

но, допустим у меня есть поле role, если я делаю Yii::$app->user->role, он пишет,что свойство не определено, как мне получить доступ к его значению?

Re: Как получить данные о пользователе?

Добавлено: 2017.12.12, 21:11
urichalex
Yii::$app->identity->role

Re: Как получить данные о пользователе?

Добавлено: 2017.12.12, 22:32
ElisDN
Yii::$app->user->identity->role

Re: Как получить данные о пользователе?

Добавлено: 2017.12.12, 22:36
user
Огромное человеческое спасибо!