vlastimilvasek/discogs-api

使用 Guzzle 的简单 Discogs Api 包装器。

0.1-alpha 2018-05-08 19:08 UTC

This package is auto-updated.

Last update: 2024-09-29 06:08:44 UTC


README

Latest Version on Packagist Software License Build Status SensioLabsInsight Quality Score Total Downloads

此包使与 discogs-api 通信变得简单。它使用 Guzzle 6,安装和使用都非常简单。

您可以使用它与任何 PHP 框架或直接在裸 PHP 应用程序中使用。

但是,如果您想在 Laravel 框架中使用它,我建议也安装 jolitagrazyte/laravel-discogs 包,该包提供了一种更简单的方式来与之交互。

安装

您可以通过 composer 安装此包

composer require jolitagrazyte/discogs-api

用法

无需身份验证的端点

对于不需要 token 的端点,第一个参数可以很容易地留空。

$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');

需要身份验证的端点

对于需要 token 的端点,您必须添加您的 discogs-token。

您可以在 https://www.discogs.com/settings/developers 获取它。

订单

要获取您的订单,您可以使用 getMyOrders()-方法。

订单列表分页显示,默认为每页 50 个订单,但可以更改。

如果您需要,您可以添加一些可选参数: pageperPage(最大为 100)、订单状态作为 statussortsortOrder

有关参数的更多信息,您可以在 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)。有关更多信息,请参阅 许可文件