由于抖音官方SDK相关教程太少, 所以本着 前人种树后人乘凉 的精神,写下本篇博客
第一步:下载抖音官方SDK
下载地址:抖音SDK官方下载
选择 Php下载地址 进行下载即可
第二步:将SDK导入
1.解压下载的压缩文件
2.在thinkphp项目的根目录(与application目录同级)下的extend目录下新建Douyin目录,再在Douyin目录里新建Open目录
3.将解压出来的php-sdk/douyin_open/lib目录里面的所有文件和文件夹全部复制到刚才新建的DouyinOpen目录下
复制完成后目录结构如下
第三步:安装guzzlehttp依赖
因为抖音的SDK基本都是基于guzzlehttp发送的请求,所以需要安装依赖
我这里使用Composer进行安装,如你还未安装Composer ,请先安装
1.执行命令 composer require guzzlehttp/guzzle:~6.0
2.安装完成后即可调用接口
第四步:接口调用
接口调用可参考下载的SDK内置的php-sdkdouyin_opentestApi,里面有大部分API调用方法,可参考调用
我这里只演示授权并获取用户信息
/**
* Created by PhpStorm.
* User: bigniu
* Date: 2020-04-25
* Time: 21:46:42
*/
namespace appapicontrollerv1;
use DouyinOpenApiDefaultApi;
use DouyinOpenApiUserInfoApi;
use Exception;
use GuzzleHttpClient;
use thinkController;
class Douyin extends Controller
{
public function auth($code='')
{
//创建默认API的实例,verify=false不做ssl验证,否则可能报错,根据实际情况而定
$apiInstance = new DefaultApi(new Client(['verify' => false]));
//填写自己的client_key
$client_key = "xxx";
//填写自己的client_secret
$client_secret = "xxx";
$grant_type = 'authorization_code';//根据官方文档填写
try {
//调用获取AccessToken的接口
$result = $apiInstance->oauthAccessTokenGet($client_key, $client_secret, $code, $grant_type);
} catch (Exception $e) {
return error("登录失败");
}
//判断返回的数据是否为空
if (!$result) {
return error("登录失败");
}
//判断返回的Message是否为error
if ($result->getMessage() == 'error') {
return error("登录失败");
}
//获取返回数据
$data=$result->getData();
//获取openid和access_toekn
$openid = $data->getOpenId();
$access_token = $data->getAccessToken();
//创建用户信息API
$userApi = new UserInfoApi(new Client(['verify' => false]));
//获取用户信息
$userInfo = $userApi->oauthUserinfoGetWithHttpInfo($access_token,$openid);
dump($userInfo);
}
}