在PHP中通过microsoft Graph 365 API从microsoft outlook帐户检索用户配置文件图片时出现问题
我正在尝试使用microsoft 365 graph API获取microsoft outlook邮件用户配置文件照片 我已在应用程序上设置了以下权限User.Read、User.ReadWrite、User.ReadBasic.All、User.Read.All、User.ReadWrite.All,但它不显示任何个人资料照片,而用户的outlook邮件帐户上已上载个人资料照片 下面是代码在PHP中通过microsoft Graph 365 API从microsoft outlook帐户检索用户配置文件图片时出现问题,outlook,microsoft-graph-api,Outlook,Microsoft Graph Api,我正在尝试使用microsoft 365 graph API获取microsoft outlook邮件用户配置文件照片 我已在应用程序上设置了以下权限User.Read、User.ReadWrite、User.ReadBasic.All、User.Read.All、User.ReadWrite.All,但它不显示任何个人资料照片,而用户的outlook邮件帐户上已上载个人资料照片 下面是代码 <?php session_start(); echo $acc= $_SESSION['ac
<?php
session_start();
echo $acc= $_SESSION['access_token'];
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://graph.microsoft.com/v1.0/me/photo",
//CURLOPT_URL => "https://graph.microsoft.com/v1.0/me",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
//CURLOPT_CUSTOMREQUEST => "GET",
//CURLOPT_POSTFIELDS => "$data",
CURLOPT_HTTPHEADER => array(
"authorization: Bearer $acc"
),
));
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
print_r($response);
$json = json_decode($response);
$res = $json->{'items'};
if ($err) {
echo "cURL Error #:" . $err;
} else {
//echo $response;
}
?>
你就快到了。你想用的是
https://graph.microsoft.com/v1.0/me/photo/$value
欢迎来到堆栈溢出!由于您是新用户,我建议您阅读。不清楚这是什么类型的帐户(个人vs工作/学校)或者你遇到了什么错误。在Jason Rivera,当我按照你的建议添加时,它会显示以下错误“error”:{“code”:“GetUserPhoto”,“message”:“操作不受支持”。,“innerError”:{“请求id”:“d10f8f9a-f361-4787-b7dd-766AC514F9”,“date”::“2017-12-01T02:09:40”}在Marc LaFleur,outlook Microsoft电子邮件帐户是个人帐户啊,这可能是问题所在。它适用于学校和工作帐户。我认为它不适用于其他Microsoft帐户。在Jason Rivera,我的应用程序利用MSA 365 Microsoft Graph APIOne解决方案,因此如何创建用户工作帐户或学校工作帐户is将使用beta API,它提供对MSA配置文件照片的支持。换句话说,将graph.microsoft.com/v1.0/me/photo/$value端点改为graph.microsoft.com/beta/me/photo/$value。