gamepanelio / spiget-api
Spiget.org API 的 PHP 实现
0.2.0
2017-09-09 20:40 UTC
Requires
- php-http/client-implementation: ^1.0
- php-http/discovery: ^1.0
- php-http/httplug: ^1.0
- php-http/message-factory: ^1.0
Requires (Dev)
- guzzlehttp/psr7: ^1.0
- php-http/guzzle6-adapter: ^1.1
- php-http/message: ^1.0
This package is not auto-updated.
Last update: 2024-09-15 03:34:26 UTC
README
这个库是 Spiget.org API 的基本 PHP 实现。
安装
这个库使用了 HTTPlug HTTP 客户端抽象库 - 意味着你可以用你喜欢的 HTTP 库来使用它!
为了快速方便地在你的项目中使用这个库,通过 composer 运行以下命令
composer require php-http/curl-client guzzlehttp/psr7 php-http/message gamepanelio/spiget-api
还有许多 不同的库 可以与 HTTPlug 一起使用。有关如何使用不同库的说明,请 参考 HTTPlug 文档。
使用方法
简单地实例化一个 new Spiget()
类,并使用它提供的方法
<?php use GamePanelio\SpigetApi\Spiget; $spiget = new Spiget("My_cool_user_agent/1.0"); $response = $spiget->getResourceSearch( 'search_param', [ /* ... additional parameters ... */ ] );
返回数据
每个方法都返回一个 PSR-7 Response。
$response = $spiget->getResourcesList(); // To get the response data var_dump($spiget->getResponseBodyFromJson($response)); // or var_dump(json_decode($response->getBody(), true)); // To get the page count, etc var_dump($response->getHeaderLine('X-Page-Count'));
API 错误和异常
任何不成功的响应(HTTP 状态码 <200>=300)将抛出 ApiCommunicationException
。
如果你使用的是抛出 PSR-7 错误的库(例如,Guzzle),它们将被包装,你可以通过 ->getPrevious()
方法访问 PSR-7 异常。
命名约定
Spiget 类提供的每个方法都有以下格式的命名约定
$spiget->[method-related-term][action]()
许可协议
此库受 MIT 许可协议许可。有关更多信息,请参阅 LICENSE
文件。