【发布时间】:2020-11-27 23:39:22
【问题描述】:
我正在对照伦敦当前日期检查我的访问令牌的到期日期。我只是想在这个阶段转换时间/日期。有人可以向我解释为什么我的回复中的到期日期是在生成访问令牌之前吗?我在http://phpfiddle.org/ 运行它。
我正在调用这个 API: https://login.microsoftonline.com/"ID"/oauth2/token
得到这样的回应: "expires_on": "1596726056",
然后相信我正在将它从时代转换为人类可读:
$expires = var_dump($tokenResponse_data->{'expires_on'});
var_dump(date('Y-m-d h:i:s', $expires));
但是得到这个结果,即使我今天只生成了令牌: “1969-12-31 07:00:00”。
这是完整的代码,减去我的凭据:
<?php
$curl_handle = curl_init();
$tokenUrl = "https://login.microsoftonline.com/"app id"/oauth2/token";
curl_setopt($curl_handle, CURLOPT_URL, $tokenUrl);
curl_setopt($curl_handle, CURLOPT_POST, 1);
curl_setopt($curl_handle, CURLOPT_POSTFIELDS,
"grant_type=client_credentials&client_id="id"&client_secret="client secret"--r~-PWm1&scope=https://graph.microsoft.com/Calendars.Read");
curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER, true);
$curl_tokenData = curl_exec($curl_handle);
curl_close($curl_handle);
$tokenResponse_data = json_decode($curl_tokenData);
$expires = var_dump($tokenResponse_data->{'expires_on'});
var_dump(date('Y-m-d h:i:s', $expires));
?>
我没有做错什么?有任何想法吗?谢谢。
【问题讨论】:
标签: php api oauth oauth-2.0 access-token