jolitagrazyte / discogs-api
使用 Guzzle7 的简单 Discogs Api 包装器。
Requires
- php: ^7.4|^8.1|^8.2
- ext-json: *
- guzzlehttp/guzzle: ^7.8
- illuminate/support: ^9.28|^10.0|^11.0
Requires (Dev)
- mockery/mockery: ^1.4.4
- phpunit/phpunit: ^9.5|^10.5|^11.0
- roave/security-advisories: dev-latest
This package is auto-updated.
Last update: 2024-09-04 10:21:41 UTC
README
此包使与 discogs-api 通信变得容易。它使用 Guzzle 7,并且安装和使用都非常简单。
您可以使用它与任何 PHP 框架或直接在裸 PHP 应用程序中使用。
但是,如果您想在 Laravel 框架中使用它,我建议还安装 jolitagrazyte/laravel-discogs 包,它提供了一个用于更轻松使用它的外观。
安装
您可以通过 composer 安装此包
composer require jolitagrazyte/discogs-api
用法
无需认证的端点
对于不需要令牌的端点,第一个参数可以轻松留空。
$discogs = new DiscogsApi(); //get artist with id 1 $artist = $discogs->artist('1'); //get releases of the artist with id 1 $artistReleases = $discogs->artistReleases('1'); //get label with id 1 $label = $discogs->label('1'); //get releases of the label with id 1 $labelReleases = $discogs->labelReleases('1'); //get release with id 1 $releases = $discogs->releases('1'); //get master release with id 1 $masterRelease = $discogs->masterRelease('1');
需要认证的端点
对于需要令牌的端点,您必须添加您的 discogs-token。
您可以在 https://www.discogs.com/settings/developers 获取它。
订单
要获取您的订单,您可以使用 getMyOrders()-方法。
订单列表分页显示,默认为每页 50 个订单,但可以更改。
如果您需要,可以添加一些可选参数: page
,perPage
(最大为 100),订单状态为 status
,sort
和 sortOrder
。
有关参数的更多信息,请参阅 https://www.discogs.com/developers。
$discogs = new DiscogsApi('discogs-token', 'app-name'); //get orders $orders = $discogs->getMyOrders(); /** * get orders with parameters: * in this example page = 3, perPage = 25, status = shipped, sort = created, sortOrder = desc */ $ordersWithOptions = $discogs->getMyOrders(3, 25, "shipped", "created", "desc");
根据 ID 获取特定订单
$discogs = new DiscogsApi('discogs-token', 'app-name'); //get order with id $order = $discogs->orderWithId('123');
还可以检索订单的消息
$discogs = new DiscogsApi('discogs-token', 'app-name'); //get messages of an order with id $ordersMessages = $discogs->orderMessages('123');
更改订单状态或向订单添加运输信息。
$discogs = new DiscogsApi('discogs-token', 'app-name'); //change order status to 'Shipped' $orders = $discogs->changeOrderStatus('123', 'Shipped'); //add shipping to an order with id $order = $discogs->addShipping('123', '12.60');
搜索
如果您想添加一些额外的搜索参数,您可以通过首先创建一个 SearchParameters 对象,然后链接尽可能多的选项来实现。
$discogs = new DiscogsApi('discogs-token', 'app-name'); // create a SearchParameters object and chain some search paramater $searchParameters = SearchParameters::make()->format('LP')->year('1996'); //do a search request with a query = 'MoWax' and passing the SearchParameters object $searchResult = $discogs->search('MoWax', $searchParameters);
变更日志
请参阅 CHANGELOG 了解最近更改的信息。
测试
$ composer test
贡献
请参阅 CONTRIBUTING 了解详细信息。
安全
如果您发现任何安全相关的问题,请通过电子邮件 hello@jolitagrazyte.com 而不是使用问题跟踪器。
致谢
许可证
MIT 许可证 (MIT)。有关更多信息,请参阅 许可证文件。