InvalidAuthenticationToken 和 CompactToken 问题 - Microsoft Graph 使用 PHP Curl
InvalidAuthenticationToken and CompactToken issues - Microsoft Graph using PHP Curl
我能够通过 oauth(参数:代码)等让用户登录成功获取 access_token。但是,每次我尝试 post 授权 header(通过 php)到图形端点(例如 /me),我最终收到此错误:
{
error: {
code: "InvalidAuthenticationToken",
message: "CompactToken parsing failed with error code: -2147184105",
innerError: {
request-id: "59cc0e42-90b7-445a-8bf7-009ff476bcbe",
date: "2016-02-27T04:39:09"
}
}
}
什么是 CompactToken 解析?有没有办法找出解决这个问题的方法?
注意:在撰写本文时,没有 PHP Microsoft Graph SDK,所以我只是使用 php
进行 curl 调用
此错误显然是由于在 curl 请求中将 OAuth 令牌作为 OAuth 而不是 Bearer 发送。
这触发了上述错误:
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json',
'Content-Length: 0',
'Authorization: OAuth '.$token)
);
这产生了成功的响应:
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json',
'Content-Length: 0',
'Authorization: Bearer '.$token)
);
我能够通过 oauth(参数:代码)等让用户登录成功获取 access_token。但是,每次我尝试 post 授权 header(通过 php)到图形端点(例如 /me),我最终收到此错误:
{ error: { code: "InvalidAuthenticationToken", message: "CompactToken parsing failed with error code: -2147184105", innerError: { request-id: "59cc0e42-90b7-445a-8bf7-009ff476bcbe", date: "2016-02-27T04:39:09" } } }
什么是 CompactToken 解析?有没有办法找出解决这个问题的方法?
注意:在撰写本文时,没有 PHP Microsoft Graph SDK,所以我只是使用 php
进行 curl 调用此错误显然是由于在 curl 请求中将 OAuth 令牌作为 OAuth 而不是 Bearer 发送。
这触发了上述错误:
curl_setopt($ch, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'Content-Length: 0', 'Authorization: OAuth '.$token) );
这产生了成功的响应:
curl_setopt($ch, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'Content-Length: 0', 'Authorization: Bearer '.$token) );