valandur / webapi-client-php
Requires
- php: >=5.5
- ext-curl: *
- ext-json: *
- ext-mbstring: *
- guzzlehttp/guzzle: ^6.2
Requires (Dev)
- friendsofphp/php-cs-fixer: ~2.12
- phpunit/phpunit: ^4.8
- squizlabs/php_codesniffer: ~2.6
README
通过WebAPI访问Sponge驱动的Minecraft服务器
简介
这是WebAPI插件提供的各种API路由的文档。
本文档假设您熟悉Web API的基本概念,例如 GET
、PUT
、POST
和 DELETE
方法,请求 HEADERS
和 RESPONSE CODES
以及 JSON
数据。
默认情况下,本文档可在 http:/localhost:8080(您的Minecraft服务器运行时)找到,并且各种路由以 http:/localhost:8080/api/v5... 开头。
作为一个快速测试,尝试访问路由 http:/localhost:8080/api/v5/info(请记住,您只能在运行Minecraft的服务器上访问“localhost”路由)。此路由应显示有关您服务器的基本信息,如motd和玩家数量。
列出端点
许多对象提供列出所有对象的端点(例如,GET: /world
获取所有世界)。默认情况下,这些端点仅返回标记为 'required' 的属性,因为列表可能很大。如果您想为列表端点返回所有数据,请添加查询参数 details
,(例如,GET: /world?details
)。
请注意,在这种情况下,端点返回的数据可能相当大。
调试端点
除了 ?details
标志外,您还可以传递一些其他标志用于调试目的。请记住,您必须使用 ?
包含第一个查询参数,并使用 &
包含后续参数
details
:为列表端点包含详细信息accept=[json/xml]
:手动设置接受内容类型。这对于浏览器测试很有用,但不要在生产环境中使用,您可以为它提供Accepts
头部pretty
:格式化打印数据,也适用于在浏览器中进行调试。
一个示例请求可能如下所示:https://:8080/api/v5/world?details&accpet=json&pretty&key=MY-API-KEY
附加数据
某些端点(如 /player
、/entity
和 /tile-entity
)具有一些未在本文档中记录的附加属性,因为这些数据取决于具体对象类型(例如,Sheep
有羊毛颜色,其他没有)以及运行在您服务器上的其他插件/模组,它们可能会添加附加数据。
您还可以在github文档中找到更多信息(https:/github.com/Valandur/Web-API/tree/master/docs/DATA.md)
Swagger
此PHP包由Swagger Codegen项目自动生成
- API版本:5.4.2-S7.1.0
- 构建包:io.swagger.codegen.languages.PhpClientCodegen。更多信息,请访问https://github.com/Valandur
要求
PHP 5.5 及以上
安装 & 使用
Composer
要通过Composer安装绑定,请将以下内容添加到 composer.json
{
"repositories": [
{
"type": "git",
"url": "https://github.com/GIT_USER_ID/GIT_REPO_ID.git"
}
],
"require": {
"GIT_USER_ID/GIT_REPO_ID": "*@dev"
}
}
然后运行 composer install
手动安装
下载文件并包含 autoload.php
require_once('/path/to/SwaggerClient-php/vendor/autoload.php');
测试
要运行单元测试
composer install
./vendor/bin/phpunit
入门
请遵循安装过程,然后运行以下命令
<?php require_once(__DIR__ . '/vendor/autoload.php'); // Configure API key authorization: ApiKeyHeader $config = Swagger\Client\Configuration::getDefaultConfiguration()->setApiKey('X-WebAPI-Key', 'YOUR_API_KEY'); // Uncomment below to setup prefix (e.g. Bearer) for API key, if needed // $config = Swagger\Client\Configuration::getDefaultConfiguration()->setApiKeyPrefix('X-WebAPI-Key', 'Bearer'); // Configure API key authorization: ApiKeyQuery $config = Swagger\Client\Configuration::getDefaultConfiguration()->setApiKey('key', 'YOUR_API_KEY'); // Uncomment below to setup prefix (e.g. Bearer) for API key, if needed // $config = Swagger\Client\Configuration::getDefaultConfiguration()->setApiKeyPrefix('key', 'Bearer'); $apiInstance = new Swagger\Client\Api\ActiveTimeApi( // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`. // This is optional, `GuzzleHttp\Client` will be used as default. new GuzzleHttp\Client(), $config ); $details = true; // bool | Add to include additional details, omit or false otherwise $accept = "accept_example"; // string | Override the 'Accept' request header (useful for debugging your requests) $pretty = true; // bool | Add to make the Web-API pretty print the response (useful for debugging your requests) try { $result = $apiInstance->getServerReport($details, $accept, $pretty); print_r($result); } catch (Exception $e) { echo 'Exception when calling ActiveTimeApi->getServerReport: ', $e->getMessage(), PHP_EOL; } ?>
API端点文档
所有URI均相对于 https:///api/v5
模型文档
- AcceptsItems
- 账户
- 进展
- AgeableData
- 护甲槽类型
- 护甲架数据
- 身份验证请求
- 旗帜数据
- 灯塔数据
- 方块操作
- 方块状态
- 呼吸数据
- 炼药锅数据
- 缓存对象
- 职业
- 目录类型
- 目录类型进展树
- 目录类型货币
- 目录类型难度
- 目录类型维度类型
- 目录类型实体类型
- 目录类型游戏模式
- 目录类型生成器类型
- 目录类型库存原型
- 目录类型天气
- 原因
- 块
- 颜色
- 命令
- 命令调用
- 命令数据
- 命令结果
- 命令任务
- 创建方块操作请求
- 创建实体请求
- 创建用户请求
- 创建世界请求
- 货币
- 伤害请求
- 可伤害数据
- 消失延迟数据
- 耐久度数据
- 染料颜色
- 附魔
- 末地传送门数据
- 实体
- 实体原型
- 实体快照
- 装备槽类型
- 执行命令请求
- 执行命令响应
- 执行方法参数
- 执行方法请求
- 执行方法响应
- 经验持有者数据
- 下落方块数据
- 烟花效果
- 烟花火箭数据
- 流体堆叠
- 食物数据
- 熔炉数据
- 引线数据
- 游戏模式
- 生长数据
- GUI ID属性
- 健康数据
- 隐藏数据
- 马数据
- 可识别
- 可点燃数据
- 内联响应400
- 内联响应401
- 内联响应403
- 内联响应404
- 内联响应500
- 交互式消息
- 交互式消息选项
- 库存
- 库存容量
- 库存维度
- 库存标题
- 隐形数据
- 无敌数据
- 物品堆叠
- 加入数据
- 牵引数据
- LocalDate
- 位置
- MegaMenusElement
- MegaMenusRenderer
- MenuMenusMenu
- 消息
- 矿车方块数据
- 生物生成器数据
- 修改方块操作请求
- 修改用户请求
- 图案层
- 权限结构
- 拾取延迟数据
- 玩家
- 插件容器
- 插件依赖
- 药水效果
- RedProtectRegion
- 计划
- 服务器信息
- 服务器属性
- 服务器报告
- 服务器统计
- 服务器统计双精度
- 服务器统计整数
- 服务器统计
- 粘液数据
- 槽
- 槽索引
- 槽位置
- 槽请求
- 槽侧面
- 统计
- 结构数据
- 主题
- 主题集合
- 表条目
- 表条目实体原型
- 可驯服数据
- 方块实体
- 时间持有者
- 交易提议
- 转换
- 通用市场物品
- 更新实体请求
- 更新玩家请求
- 更新方块实体请求
- 更新世界请求
- 用户权限结构
- 用户报告
- Vector2i
- Vector3d
- Vector3i
- 车辆数据
- 村民商店商店
- 村民商店库存物品
- WebBooksBook
- WireAttachmentData
- 世界
- 世界边界
- 方块变更操作
- 方块获取操作
- 聊天消息
授权文档
ApiKeyHeader
- 类型:API密钥
- API密钥参数名称:X-WebAPI-Key
- 位置:HTTP头
ApiKeyQuery
- 类型:API密钥
- API密钥参数名称:key
- 位置:URL查询字符串