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

Всё что касается построения API
Закрыто
user
Сообщения: 60
Зарегистрирован: 2017.12.05, 16:55

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

Сообщение user » 2017.12.12, 02:58

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

Аватара пользователя
ElisDN
Сообщения: 4961
Зарегистрирован: 2012.10.07, 10:24
Контактная информация:

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

Сообщение ElisDN » 2017.12.12, 07:20

Булет тот же Yii::$app->user. Только используется BearerAuth по findByAccessToken.

user
Сообщения: 60
Зарегистрирован: 2017.12.05, 16:55

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

Сообщение user » 2017.12.12, 20:48

спасибо!
если делаю 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, он пишет,что свойство не определено, как мне получить доступ к его значению?

urichalex
Сообщения: 622
Зарегистрирован: 2015.08.07, 11:03

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

Сообщение urichalex » 2017.12.12, 21:11

Yii::$app->identity->role

Аватара пользователя
ElisDN
Сообщения: 4961
Зарегистрирован: 2012.10.07, 10:24
Контактная информация:

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

Сообщение ElisDN » 2017.12.12, 22:32

Yii::$app->user->identity->role

user
Сообщения: 60
Зарегистрирован: 2017.12.05, 16:55

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

Сообщение user » 2017.12.12, 22:36

Огромное человеческое спасибо!

Закрыто