在PHP中通过microsoft Graph 365 API从microsoft 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

我正在尝试使用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['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。