nssmart / steam-web-api-client
自动生成的Steam Web API客户端,风格仿照google-api-php-client。
Requires
- guzzlehttp/guzzle: >=6.0
Requires (Dev)
- nikic/php-parser: ~2.0
This package is not auto-updated.
Last update: 2024-10-01 23:59:10 UTC
README
此包是zyberspace原始版本的最新版。目前唯一的区别是使用guzzle >= 7.0版本允许与其它现代包一起安装的开放版本。
zyberspace/steam-web-api-client
自动生成的Steam Web API客户端,风格仿照google-api-php-client。
自动生成的?
是的,每个API接口(这些不是PHP接口)都从/ISteamWebAPIUtil/GetSupportedAPIList/v1/
方法自动生成。只有Interfaces
目录之外的类是手动编写的。
这样我可以很容易地保持API更新,因为每次valve更改某些内容时,我只需要运行生成命令。
安装
在您的项目根目录下
composer require --update-no-dev zyberspace/steam-web-api-client
Composer将自动将包添加到您的项目需求中并安装它(如果您还没有,还会创建composer.json
)。
客户端结构
客户端由3部分组成
Client
类,用于保存您的API密钥并处理实际的API调用。- API接口,这些接口是自动生成的,提供可调用的API方法。
InterfaceGenerator
,用于生成接口。 除非您想更新已保存的接口类,否则您不需要这个。
(通过安装开发依赖并执行composer generate-interfaces [您的API密钥]
来使用它。)
快速入门
如果您像上面一样使用Composer安装了客户端并且已经获取了从valve的API密钥,那么使用API的四个步骤如下
-
需要Composer自动加载器
require('vendor/autoload.php');
-
创建Steam Web API客户端
$client = new \Zyberspace\SteamWebApi\Client('[your api key goes here]');
-
创建您想要使用的API接口的实例
$steamUser = new \Zyberspace\SteamWebApi\Interfaces\ISteamUser($client);
-
调用您想要使用的方法
$response = $steamUser->GetPlayerSummariesV2('76561198059720690');
每个方法都返回一个由JSON响应构建的对象。如果您想了解更多关于每个特定方法响应格式的信息,请参阅Steam Web API文档。
require('vendor/autoload.php'); $client = new \Zyberspace\SteamWebApi\Client($_ENV['STEAM_WEB_API_KEY']); $steamUser = new \Zyberspace\SteamWebApi\Interfaces\ISteamUser($client); $response = $steamUser->GetPlayerSummariesV2(implode(',', $steamIds)); var_dump($response);
处理多个可选参数
如果所需的方法有多个可选参数,但您不想使用所有这些参数,请将不需要的参数设置为null
。这也是它们的默认值,因此客户端将忽略它们。
文档
要创建文档,只需在项目根目录下运行phpdoc
。
在线版本可在phpdoc.zyberware.org/zyberspace/steam-web-api-client找到。
有关API接口和方法的更多信息,请参阅Steam Web API文档。
许可证
本软件根据Mozilla Public License v. 2.0许可。有关更多信息,请阅读文件LICENSE
。