42sol/ laravel-youtrack-client
YouTrack API 客户端
1.0.7
2023-11-17 10:25 UTC
Requires
- laravel/framework: >=8
README
将服务提供者包含在您的应用程序中
在您的 config/app.php
文件中插入库服务提供者 YouTrackClient\Providers\YouTrackClientProvider::class
'providers' => [ // other service providers YouTrackClient\Providers\YouTrackClientProvider::class, ]
发布包资源
这将创建 config/youtrack.php
配置文件。
php artisan vendor:publish --provider="YouTrackClient\Providers\YouTrackClientProvider"
配置
发布包资源后,您可以在 config/youtrack.php
文件中编辑配置。
要设置您的 YouTrack 实例,请在 .env
变量中添加
YT_BASE_URL=https://youtrack.example.com # required # YT_HUB_URL=https://youtrack.example.com/hub/api/rest # optional YT_TOKEN="youtrack access token" # required
默认路由
如果需要,使用 YouTrackClient\YouTrackRoutes::apply();
来应用默认库路由,例如
/** * This will make routes: * - /yt/projects * - /yt/issues * - ... */ Route::prefix('/yt')->group(function () { YouTrackClient\YouTrackRoutes::apply(); });
路由
/projects
- 获取所有项目/projects/{id}
- 通过 ID 获取详细的项目信息/projects/{id}/issues
- 获取项目问题/projects/{id}/timeTrackingSettings
- 获取项目时间跟踪设置/agiles
- 获取所有敏捷看板/agiles/{id}
- 通过 ID 获取详细的敏捷信息/issues?query=<filter>&offset=0&limit=50
- 通过筛选器获取问题/issues/{id}
- 通过 ID 获取详细的问题信息/organizations
- 获取所有组织/users
- 获取所有用户
使用方法
手动
use YouTrackClient\YouTrackClient; $client = new YouTrackClient([ 'baseUrl' => 'https://youtrack.example.com/api', 'hubUrl' => 'https://youtrack.example.com/hub/api/rest', // optional 'token' => '<youtrack access token>' ]); $client->getProjects();
使用依赖注入
use YouTrackClient\YouTrackClient; class YoutrackTestController extends Controller { private YouTrackClient $client; // YouTrackClient will be injected here public function __construct(YouTrackClient $client) { $this->client = $client; } public function getProjects() { return $this->client->getProjects(); } }