本文整理汇总了PHP中Authorization::setAccessTokenTTL方法的典型用法代码示例。如果您正苦于以下问题:PHP Authorization::setAccessTokenTTL方法的具体用法?PHP Authorization::setAccessTokenTTL怎么用?PHP Authorization::setAccessTokenTTL使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Authorization
的用法示例。
在下文中一共展示了Authorization::setAccessTokenTTL方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: action_access_token
public function action_access_token()
{
try {
// Tell the auth server to issue an access token
//$params = $this->authserver->getGrantType('authorization_code')->checkAuthoriseParams($this->authserver->getRequest()->get());
//$ttl = 3600*24; //Access Token Expires in a day
$ttl = 120;
//Access Token Expires in a day
$this->authserver->setAccessTokenTTL($ttl);
$code = $this->authserver->getRequest()->post('code');
if (!Cache::has($code)) {
throw new Exception("Invalid Session, please try authorising again");
}
$response = $this->authserver->issueAccessToken($this->authserver->getRequest()->post());
//Convert ID token to JWT using client secret as key
$client_secret = Client::where('id', $this->authserver->getRequest()->post()['client_id'])->first()->secret;
$response['id_token'] = JWT::encode($response['id_token'], $client_secret);
} catch (League\OAuth2\Server\Exception\ClientException $e) {
// Throw an exception because there was a problem with the client's request
$response = array('error' => $this->authserver->getExceptionType($e->getCode()), 'error_description' => $e->getMessage());
// Set the correct header
header($this->authserver->getExceptionHttpHeaders($this->authserver->getExceptionType($e->getCode()))[0]);
} catch (Exception $e) {
// Throw an error when a non-library specific exception has been thrown
$response = array('error' => 'undefined_error', 'error_description' => $e->getMessage());
}
header('Content-type: application/json');
echo json_encode($response);
}