shockmediabv/myshock-php-client

PHP 客户端库,用于与 My Shock Media API 交互

24.12.0 2024-09-16 15:17 UTC

This package is auto-updated.

Last update: 2024-09-16 15:18:56 UTC


README

欢迎来到 My Shock Media PHP API 客户端!该项目提供了一个用于与 My Shock Media API 交互的 PHP 客户端库。它基于 OpenRPC 规范生成,允许您代表用户执行请求,以管理域、检索服务器信息等。

注意:该项目目前处于 BETA 测试阶段。我们不保证与未来版本的兼容性,并且可能会发生破坏性变更。

安装

要安装此库,建议使用 Composer。您可以在 composer.json 文件中包含该包,如下所示

{
  "require": {
    "shockmediabv/myshock-php-client": "~24.12.0"
  }
}

然后,运行以下命令来安装包

composer install

或者,您可以直接使用以下命令安装包

composer require shockmediabv/myshock-php-client

基本用法

以下是一个简单的示例,帮助您开始使用 My Shock Media PHP API 客户端

<?php

include '../vendor/autoload.php';

use ShockMedia\Generated\Domain\DomainClient;
use ShockMedia\Generated\Domains\DomainFilter;
use ShockMedia\Generated\PageRequest;
use ShockMedia\Generated\SimpleHttpClient;
use ShockMedia\Generated\SortField;
use ShockMedia\Generated\SortField\DirectionAlt2;

// The API location and credentials
$url = 'https://my.shockmedia.nl/openrpc/';
$authorizationHeader = 'ApiKey <your api key here>';

// The HTTP client to use. Can be swapped out for a custom implementation, for example using cURL.
$client = new SimpleHttpClient($url, $authorizationHeader);

// Create a client for interacting with the Domain endpoint
$domainClient = new DomainClient($client);

// Example call: list the first 10 domains of a user, sorted by name, without any filters.
$result = $domainClient->listDomains(
    new PageRequest([new SortField('name', DirectionAlt2::ASC)], 0, 10), 
    new DomainFilter(null)
 );

// Output the example result
var_dump($result);

说明

  1. HTTP 客户端设置
    • 我们首先创建一个 SimpleHttpClient,这是用于向 API 发送请求的核心客户端。此客户端需要两个参数
      • API URL:My Shock Media API 的基本 URL。
      • 授权头:包含认证方案和 API 密钥或凭据的授权头字符串。
    • 可选地,您可以为 HTTP 请求提供自己的 HTTP 客户端实现,例如如果您想使用 cURL。
  2. 域名客户端
    • 然后,我们创建一个 DomainClient,允许我们与域名管理 API 端点交互。
    • 客户端库为所有 API 端点提供了 ***Client 对象。
  3. 示例调用
    • 在这个示例中,我们使用 listDomains 方法检索用户拥有的前 10 个域名,按名称升序排序。

支持的认证方案

  • ApiKey:推荐的方案,它可以限制范围,并且可以 IP 限制。
  • Basic:使用 Base64 编码的用户名和密码的基本 HTTP 认证。⚠ 警告:此方法提供对用户账户的完全访问权限,并且安全性较低。尽可能使用 API 令牌。

创建 API 密钥

要创建 API 密钥

  1. 登录到您的 My Shock Media 账户。
  2. 导航到 API 令牌 并在“API 令牌”下点击“创建新令牌”。
  3. 填写表单以选择令牌的名称、过期日期和权限。
  4. 点击“创建新令牌”提交表单。请确保保存创建的令牌,因为它只会显示一次。

文档

My Shock Media API 和 PHP 客户端库的完整文档可在您的 My Shock Media 账户中的 API 文档 页面找到(需要登录)。

许可

该项目采用 Apache-2.0 许可证。有关详细信息,请参阅 LICENSE 文件。

支持

如果您遇到任何问题或有任何疑问,请随时在My Shock Media上提交支持工单,或者通过电子邮件联系我们 support@shockmedia.nl