nssmart/steam-web-api-client

自动生成的Steam Web API客户端,风格仿照google-api-php-client。

v0.6.0 2021-01-11 08:21 UTC

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

Packagist License

自动生成的?

是的,每个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的四个步骤如下

  1. 需要Composer自动加载器

    require('vendor/autoload.php');
  2. 创建Steam Web API客户端

    $client = new \Zyberspace\SteamWebApi\Client('[your api key goes here]');
  3. 创建您想要使用的API接口的实例

    $steamUser = new \Zyberspace\SteamWebApi\Interfaces\ISteamUser($client);
  4. 调用您想要使用的方法

    $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