Множественная аутентификация в podio php api

Я создал приложение, используя podio php api. Зарегистрированный пользователь аутентифицируется с помощью своего токена обновления.

Podio :: Authenticate ('refresh_token', array ('refresh_token' => USER_REFRESH_TOKEN));

В некоторых случаях мне нужно добавить данные пользователя в другое приложение в podio. У зарегистрированного пользователя нет разрешения на доступ к этому приложению. Это вызовет ошибку Podio Forbidden.

Только администратор приложения имеет право доступа к этому приложению.

Как мы можем аутентифицировать пользователя для вставки его данных в приложение?


person Manu    schedule 01.07.2014    source источник


Ответы (1)


Токены oauth хранятся в Podio::$oauth, поэтому вы можете переключать их, когда хотите аутентифицироваться как другой объект.

Например, если вы хотите переключаться между двумя разными приложениями:

// Authenticate as the first app
Podio::authenticate('app', ...);

// Here you can make API requests as the first app

// When you want to switch, store the current auth before doing your second auth
$first_app_auth = Podio::$oauth;

// Auth as the second app.
Podio::authenticate('app', ...);

// Now you can make API requests as the second app

// ...and switch back to the first app
$second_app_auth = Podio::$oauth;

// Auth as the first app again:
Podio::$oauth = $first_app_auth;

// Make API requests as the first app again
person Andreas Haugstrup Pedersen    schedule 01.07.2014
comment
Привет, Андреас! Должны ли мы сохранить значение Podio :: $ oauth в сеансе, чтобы избежать аутентификации приложения несколько раз. - person Manu; 02.07.2014
comment
Можем ли мы использовать json_encode для хранения экземпляра класса в сеансе? - person Manu; 02.07.2014
comment
Podio :: $ oauth - это объект PodioOAuth, и я бы не рекомендовал пытаться сохранить его напрямую. См. Здесь пример Redis, чтобы узнать, как извлечь свойства и правильно создать экземпляр нового объекта PodioOAuth при извлечении: podio.github.io/podio-php/sessions - person Andreas Haugstrup Pedersen; 03.07.2014