joan_s/azure-devops-api

Azure DevOps API 客户端

dev-master 2020-02-27 09:09 UTC

This package is auto-updated.

Last update: 2024-09-27 19:00:04 UTC


README

Azure DevOps API 的简单 PHP 封装。

安装

使用 Composer 安装库。

php composer.phar require joan_s/azure-devops-api

运行单元测试

你可以运行单元测试来确保库可以正常工作。

vendor/bin/phpunit vendor/joan_s/azure-devops-api

用法

使用 OAuth 2.0 授权访问

在开始之前,你需要注册你的应用程序并在 Azure DevOps 获取一个应用 ID。

然后你的用户需要在他们的账户上授权你的应用程序。你将从这个过程中获得一个授权码,用于获取一个访问令牌,这将允许你向 API 发送请求。

你可以参考 Azure DevOps OAuth 文档 了解如何获取授权码。

获取访问令牌

一旦你有了你应用程序的授权码,我们提供了一个 OAuth 客户端来获取你将需要用于验证请求到 API 的访问令牌。

...

$oAuthClient = new AzureDevOps\OAuthClient('app_client_secret', 'app_redirect_uri');

$response = $oAuthClient->getOAuthTokens('authorization_code');

$accessToken = $response['access_token'];
$refreshToken = $response['refresh_token'];

你应该保存刷新令牌,以便在它过期后能够获取新的访问令牌。

刷新访问令牌

刷新访问令牌与获取一个是一样的。使用刷新令牌而不是授权码。

...

$response = $oAuthClient->getOAuthTokens('refresh_token');

$newAccessToken = $response['access_token'];
$newRefreshToken = $response['refresh_token'];

使用访问令牌

...

// Instantiate a client.
$client = new AzureDevOps\Client('access_token', 'https://dev.azure.com/organization');

// Get the first project of your organization.
$projects = $client->core->projects->list(['$top' => 1]);

// Extract project id from the response.
$projectId = $projects['value'][0]['id'];

// Get all workItems for this project, expanding all their fields.
$workItems = $client->workItemTracking->workItems->list($projectId, ['$expand' => 'fields']);

有关可用端点的更多信息,请参阅 Azure DevOps API 文档

感谢