定制 douyin/open-api-php-sdk 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

douyin/open-api-php-sdk

最新稳定版本:1.5.0

Composer 安装命令:

composer require douyin/open-api-php-sdk

包简介

抖音开放平台PHP SDK

README 文档

README

Latest Stable Version Total Downloads License

抖音开放平台PHP SDK,支持小程序、小游戏等服务端API调用。

功能特性

  • 🎯 完整的抖音开放平台API支持
  • 🔐 自动签名生成和验证
  • 🧪 沙盒环境支持
  • 📦 PSR-4自动加载支持
  • 🛡️ 统一异常处理机制
  • 📘 详细的文档和示例
  • 🔄 统一的token管理机制
  • 📦 模块化设计,降低耦合度
  • ⚙️ 配置统一管理
  • 🌐 单例模式HTTP客户端
  • 🚀 动态模块加载,简化调用方式
  • 📡 完整的API调用SDK,支持服务商平台API

环境要求

  • PHP >= 7.0
  • ext-curl
  • ext-json

安装

使用 Composer 安装:

composer require douyin/open-api-php-sdk

或者在你的 composer.json 文件中添加:

{
    "require": {
        "douyin/open-api-php-sdk": "^1.0"
    }
}

然后运行:

composer install

快速开始

<?php

require_once __DIR__ . '/vendor/autoload.php';

use Douyin\OpenAPI\Douyin;
use Douyin\OpenAPI\Exceptions\DouyinException;

// 初始化客户端
$client = new Douyin('your_app_id', 'your_app_secret');

// 使用沙盒环境(可选)
// $client->setSandbox(true);

// 获取授权模块 - 新的优雅调用方式
$auth = $client->auth();

// 获取小程序模块
$miniProgram = $client->miniProgram();

// 示例:通过授权码获取access_token
try {
    $result = $auth->getAccessToken('auth_code', 'redirect_uri');
    print_r($result);
} catch (DouyinException $e) {
    echo 'Error: ' . $e->getMessage();
}

Laravel 集成

本 SDK 提供了对 Laravel 框架的完整支持。

安装

composer require douyin/open-api-php-sdk

配置

  1. 发布配置文件:
php artisan vendor:publish --provider="Douyin\OpenAPI\LaravelServiceProvider"
  1. .env 文件中添加配置:
DOUYIN_APP_ID=your_app_id
DOUYIN_APP_SECRET=your_app_secret
DOUYIN_DOMAIN=https://open.douyin.com
DOUYIN_SANDBOX=false

使用

在控制器或服务类中使用:

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use Douyin\OpenAPI\Facades\Douyin;

class DouyinController extends Controller
{
    public function getUserInfo()
    {
        try {
            // 使用门面调用
            $userModule = Douyin::userManagement();
            
            // 获取用户信息
            // $userInfo = $userModule->getUserInfo(['open_id' => 'user_open_id']);
            
            return response()->json([
                'success' => true,
                'message' => '获取用户信息成功'
            ]);
        } catch (\Exception $e) {
            return response()->json([
                'success' => false,
                'message' => '获取用户信息失败: ' . $e->getMessage()
            ], 500);
        }
    }
}

你也可以通过依赖注入的方式使用:

<?php

namespace App\Services;

use Douyin\OpenAPI\Douyin;

class DouyinService
{
    protected $douyin;
    
    public function __construct(Douyin $douyin)
    {
        $this->douyin = $douyin;
    }
    
    public function getAccessToken($code, $redirectUri)
    {
        $auth = $this->douyin->auth();
        return $auth->getAccessToken($code, $redirectUri);
    }
}

API调用SDK

本SDK还提供了完整的API调用接口,涵盖了抖音开放平台服务商平台的主要功能模块:

API分类

  • 授权管理
  • 模板管理
  • 开发管理
  • 基础信息管理
  • 登录管理
  • 支付服务

详细使用方法请参考 API调用SDK说明

目录结构

src/
├── Api/                 # API调用SDK
│   ├── Authorization/   # 授权管理API
│   ├── Template/        # 模板管理API
│   ├── Development/     # 开发管理API
│   ├── BasicInfo/       # 基础信息管理API
│   ├── Login/           # 登录管理API
│   ├── Payment/         # 支付服务API
│   ├── ApiClient.php    # API调用基础类
│   ├── ApiFactory.php   # API工厂类
│   └── README.md        # API调用SDK说明
├── Base/                # 基础模块
├── Config/              # 配置文件
├── Exceptions/          # 异常处理
├── HttpClient/          # HTTP客户端
├── Support/             # 支持类库
├── Format/              # 格式化模块
└── *.php                # 各种API模块

优化特性

1. 统一的Token管理

SDK现在使用统一的Token管理机制,避免了重复的token获取和缓存逻辑。

2. 基础模块类

所有模块类现在继承自BaseModule类,共享通用的HTTP请求处理逻辑。

3. 配置统一管理

所有配置常量现在统一在OpenApiConfig类中管理,便于维护和修改。

4. 单例模式HTTP客户端

HTTP客户端使用单例模式,避免了重复创建实例的资源浪费。

5. 降低模块间耦合

通过继承和依赖注入,模块间的耦合度大大降低,提高了代码的可维护性。

License

MIT License

统计信息

  • 总下载量: 0
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-12-01