Rumah > Soal Jawab > teks badan
P粉4267805152023-09-06 00:58:31
Gunakan OAuth 2.0授权
对用户进行身份验证并获取访问令牌。并使用它调用 Microsoft Graph API
untuk mendapatkan semula e-mel pengguna.
Untuk soalan anda, halaman log masuk mungkin muncul apabila anda tidak log masuk. Untuk membetulkannya, anda perlu menggunakan OAuth 2.0 客户端凭据
dan bukannya kod kebenaran. p>
Contoh kod untuk mendapatkan token akses menggunakan kelayakan pelanggan.
$tenantId = 'your-tenant-id';
$client_id = 'your-client-id';
$client_secret = 'your-client-secret';
$resource = 'https://graph.microsoft.com';
$tokenEndpoint = 'https://login.microsoftonline.com/' . $tenantId . '/oauth2/token';
$data = array(
'grant_type' => 'client_credentials',
'client_id' => $client_id,
'client_secret' => $client_secret,
'resource' => $resource
);
$options = array(
'http' => array(
'header' => "Content-type: application/x-www-form-urlencoded\r\n",
'method' => 'POST',
'content' => http_build_query($data)
)
);
$context = stream_context_create($options);
$result = file_get_contents($tokenEndpoint, false, $context);
$token = json_decode($result)->access_token;
Selepas anda mendapat token akses, anda boleh menggunakannya untuk menghubungi Microsoft Graph API
dan mendapatkan semula e-mel pengguna.
Contoh kod untuk mendapatkan semula e-mel pengguna.
php $graphApiEndpoint = 'https://graph.microsoft.com/v1.0/me/messages'; $options = array( 'http' => array( 'header' => "Authorization: Bearer $token\r\n" . "Content-type: application/json\r\n", 'method' => 'GET' ) ); $context = stream_context_create($options); $result = file_get_contents($graphApiEndpoint, false, $context); $messages = json_decode($result)->value;
Lihat MSDoc1 dan MSDoc2 untuk butiran.