katsu / osu-api-php
PHP client for OSU!
0.1-Alpha
2024-05-15 08:11 UTC
Requires
- php: >=8.3
- guzzlehttp/guzzle: ^7.8.1
Requires (Dev)
- phpunit/phpunit: ^11.1.3
This package is auto-updated.
Last update: 2025-05-15 16:31:04 UTC
README
Библиотека для взаимодействия с API OSU! на PHP, включает авторизацию OAuth2 и методы API v2. Полная документация предоставлена на сайте OSU.
1. Зависимости
- php: 8.3 и новее
2. Установка
Установите пакет через Composer
composer require katsu/osu-api-php
3. Использование
Авторизация
<?php declare(strict_types=1); require_once __DIR__.'/../vendor/autoload.php'; $autorize = new \Katsu\OsuApiPhp\Runtime\Authorize( 123, // id клиента 'secret-sectet-1231', // секретный ключ клиента 'http://localhost', // uri приложения 'public', //scopes ); $authUri = $autorize->getAuthorizationUrl() //Отдаст адрес для авторизации в OAuth приложении, после успешной авторизации вернет code ... $code = '1238e9sf12jsfl;1292-1' // Код, который, мы получаем после авторизации в приложении $autorize->getAccessToken($code) //Получит обьект с accessToken, refreshToken, expiresIn, tokenType
Работа с методами API
$tokens = new \Katsu\OsuApiPhp\Dto\Tokens( 'Bearer', 86400, 'eyJ0e17KV1QiLC41iJSUzI1NiJ9...', 'def87007c5a47742dg314jw5217we3b...', ); $oauth = new \Katsu\OsuApiPhp\Dto\OAuthClient(123, 'secret-sectet-1231'); //id клиента и его секретный ключ $client = \Katsu\OsuApiPhp\Client::create($oauth); //Создаем экземпляр api клиента $client->setTokens($tokens); //Устанавливаем токены $beatmapset = $client->getBeatmapsetById(1); // Вернет объект beatmapset с id = 1