concretecms / community_api_client
本包包含一个能够连接到社区的API客户端。
dev-master
2022-05-19 01:21 UTC
Requires
This package is auto-updated.
Last update: 2024-09-19 06:00:11 UTC
README
这是用于与社区网站通信的官方API客户端。
目前功能非常有限,但很快将得到扩展。
您可以使用API客户端分配成就。
需求
- PHP 7.1
- 只能在Concrete CMS环境中运行
安装
社区API客户端可以使用Composer安装。
要安装,请运行 composer require concrete5/community_api_client
配置
没有界面可以配置API客户端。然而,有多种方式可以实现。
选项1:程序化
如果您想程序化设置凭证,可以这样做
use Concrete\Core\Support\Facade\Application; use PortlandLabs\CommunityApiClient\ApiClient; /** @var ApiClient $apiClient */ $apiClient = $app->make(ApiClient::class); $apiClient ->setEndpoint("your_endpoint") ->setClientId("your_client_id") ->setClientSecret("your_client_secret");
选项2:使用配置文件
您还可以使用配置文件。
您需要创建一个名为 application/config/community_api_client.php
的文件,并包含以下内容
<?php return [ 'endpoint' => 'your_endpoint', 'client_id' => 'your_client_id', 'client_secret' => 'your_client_secret' ];
选项3:使用Concrete CMS CLI应用
您还可以使用CLI应用来配置API客户端。
concrete/bin/concrete5 c5:config set community_api_client.endpoint your_endpoint concrete/bin/concrete5 c5:config set community_api_client.client_id your_client_id concrete/bin/concrete5 c5:config set community_api_client.client_secret your_client_secret
选项4:使用环境变量
您还可以使用环境变量来设置凭证。以下变量被使用。
API_COMMUNITY_ENDPOINT
API_COMMUNITY_CLIENT_ID
API_COMMUNITY_CLIENT_SECRET
如果配置了环境变量,则将忽略Concrete CMS配置。
用法
配置端点后,您可以与API接口通信。
以下代码片段演示了如何处理它。
use Concrete\Core\Support\Facade\Application; use PortlandLabs\CommunityApiClient\Models\Achievements; $app = Application::getFacadeApplication(); /** @var Achievements $achievements */ $achievements = $app->make(Achievements::class); $success = $achievements->assign("test_handle");
目前没有可用的API文档。因此,如果您想了解可用的功能,需要查看此存储库中的models文件夹。