microsoft / microsoft-graph-beta
Microsoft Graph Beta SDK for PHP
Requires
- php: ^8.0 || ^7.4
- microsoft/microsoft-graph-core: ^2.1.0
Requires (Dev)
- phpstan/phpstan: ^0.12.90 || ^1.0.0
- phpunit/phpunit: ^8.0 || ^9.0
- dev-main
- v2.16.0
- v2.15.0
- v2.14.0
- v2.13.0
- v2.12.0
- v2.11.0
- 2.10.0
- 2.9.0
- 2.8.0
- 2.7.0
- 2.6.0
- 2.5.0
- 2.4.0
- 2.3.0
- 2.2.0
- 2.1.0
- 2.0.1
- 2.0.0
- 2.0.0-RC28
- 2.0.0-RC27
- 2.0.0-RC26
- 2.0.0-RC25
- 2.0.0-RC24
- 2.0.0-RC23
- 2.0.0-RC22
- 2.0.0-RC21
- 2.0.0-RC20
- 2.0.0-RC19
- 2.0.0-RC18
- 2.0.0-RC17
- 2.0.0-RC16
- 2.0.0-RC15
- 2.0.0-RC14
- 2.0.0-RC13
- 2.0.0-RC12
- 2.0.0-RC11
- 2.0.0-RC10
- 2.0.0-RC9
- 2.0.0-RC8
- 2.0.0-RC7
- 2.0.0-RC6
- 2.0.0-RC5
- 2.0.0-RC4
- 2.0.0-RC3
- 2.0.0-RC2
- 2.0.0-RC1
- dev-release-please--branches--main--components--microsoft/microsoft-graph-beta
- dev-kiota/beta/pipelinebuild/163754
- dev-kiota/beta/pipelinebuild/163658
- dev-kiota/beta/pipelinebuild/160559
- dev-kiota/beta/pipelinebuild/160542
- dev-kiota/beta/pipelinebuild/160533
This package is auto-updated.
Last update: 2024-09-19 07:43:42 UTC
README
安装 SDK
您可以通过编辑您的 composer.json
文件使用 Composer 安装 Beta PHP SDK
{
"require": {
// x-release-please-start-version
"microsoft/microsoft-graph-beta": "^2.16.0"
// x-release-please-end
}
}
开始使用 Microsoft Graph
注册您的应用程序
使用您租户的 Active Directory 中的 Microsoft Azure Active Directory 注册您的应用程序以使用 Microsoft Graph API,以支持您的租户或多个租户的工作或学校用户。
创建 Token 请求上下文
Token 请求上下文包含用于验证请求的凭据。SDK 支持与 OAuth 2.0 流相匹配的各种上下文:client_credentials
、authorization_code
和 on_behalf_of
,并支持基于秘密和基于证书的客户端身份验证。
Token 请求上下文传递给认证提供程序,该程序获取、缓存和刷新访问令牌,确保所有请求都针对 Microsoft Identity 平台进行身份验证。
以下示例创建了一个 获取用户访问权限而不需要用户 的 TokenRequestContext
<?php use Microsoft\Kiota\Authentication\Oauth\ClientCredentialContext; use Microsoft\Graph\Core\Authentication\GraphPhpLeagueAuthenticationProvider; $tokenRequestContext = new ClientCredentialContext( 'tenantId', 'clientId', 'clientSecret' );
<?php use Microsoft\Kiota\Authentication\Oauth\AuthorizationCodeContext; use Microsoft\Graph\Core\Authentication\GraphPhpLeagueAuthenticationProvider; $tokenRequestContext = new AuthorizationCodeContext( 'tenantId', 'clientId', 'clientSecret', 'authCode', 'redirectUri' );
请注意,您的应用程序需要处理将用户重定向到 Microsoft Identity 登录页面以获取传递到 AuthorizationCodeContext
的 authorization_code
。有关 authorization_code
授予流的更多信息,请参阅 此处。要跨会话中的多个请求保持用户登录,请参阅关于 访问令牌管理 的部分。
初始化 GraphServiceClient
使用 Token 请求上下文和可选的作用域,可以初始化 GraphServiceClient
use Microsoft\Graph\GraphServiceClient; // Defaults to using https://graph.microsoft.com/.default scopes $graphServiceClient = new GraphServiceClient($tokenRequestContext); // With specific scopes $scopes = ['User.Read', 'Mail.ReadWrite']; $graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
有关如何使用已获取的访问令牌初始化 GraphServiceClient
或检索 SDK 代表您获取的访问令牌的说明,请参阅 访问令牌管理 部分。
有关 Graph 客户端配置的更多信息,请参阅 更多示例
使用 Beta 端点和模型调用 Microsoft Graph
以下示例展示了如何从 Microsoft Graph 中获取用户
use Microsoft\Graph\Beta\GraphServiceClient; use Microsoft\Kiota\Abstractions\ApiException; use Microsoft\Kiota\Authentication\Oauth\ClientCredentialContext; $tokenRequestContext = new ClientCredentialContext( 'tenantId', 'clientId', 'clientSecret' ); $betaGraphServiceClient = new GraphServiceClient($tokenRequestContext); try { $user = $betaGraphServiceClient->users()->byUserId('[userPrincipalName]')->get()->wait(); echo "Hello, I am {$user->getGivenName()}"; } catch (ApiException $ex) { echo $ex->getError()->getMessage(); }
请注意,调用 me()
需要 已登录用户,因此需要委托权限(使用 authorization_code
流获取)
use Microsoft\Graph\Beta\GraphServiceClient; use Microsoft\Kiota\Abstractions\ApiException; use Microsoft\Kiota\Authentication\Oauth\AuthorizationCodeContext; $tokenRequestContext = new AuthorizationCodeContext( 'tenantId', 'clientId', 'clientSecret', 'authCode', 'redirectUri' ); $scopes = ['User.Read']; $betaGraphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes); try { $user = $betaGraphServiceClient->me()->get()->wait(); echo "Hello, I am {$user->getGivenName()}"; } catch (ApiException $ex) { echo $ex->getError()->getMessage(); }
文档和资源
升级
有关重大升级期间引入的破坏性更改、错误修复和新功能的详细信息,请参阅我们的 升级指南
开发
运行测试
从基本目录运行
vendor/bin/phpunit
.
问题
在存储库的 问题 标签页上查看或记录问题。
贡献
请仔细阅读我们的贡献指南,了解如何为这个仓库做出贡献。
版权和许可
版权(c)微软公司。版权所有。在MIT许可证下授权。
本项目采用了微软开源行为准则。更多信息请参阅行为准则FAQ或联系[email protected]提出任何额外的问题或评论。