了解Thinkphp集成抖音SDK的实现方法

了解Thinkphp集成抖音SDK的实现方法

由于抖音官方SDK相关教程太少, 所以本着 前人种树后人乘凉 的精神,写下本篇博客

第一步:下载抖音官方SDK

下载地址:抖音SDK官方下载
选择 Php下载地址 进行下载即可

了解Thinkphp集成抖音SDK的实现方法

相关学习推荐:thinkphp

第二步:将SDK导入

立即学习“PHP免费学习笔记(深入)”;

1.解压下载的压缩文件

2.在thinkphp项目的根目录(与application目录同级)下的extend目录下新建Douyin目录,再在Douyin目录里新建Open目录

了解Thinkphp集成抖音SDK的实现方法

3.将解压出来的php-sdk/douyin_open/lib目录里面的所有文件和文件夹全部复制到刚才新建的DouyinOpen目录下

了解Thinkphp集成抖音SDK的实现方法

复制完成后目录结构如下

了解Thinkphp集成抖音SDK的实现方法

第三步:安装guzzlehttp依赖

因为抖音的SDK基本都是基于guzzlehttp发送的请求,所以需要安装依赖

我这里使用Composer进行安装,如你还未安装Composer ,请先安装

1.执行命令 composer require guzzlehttp/guzzle:~6.02.安装完成后即可调用接口

第四步:接口调用

接口调用可参考下载的SDK内置的php-sdkdouyin_opentestApi,里面有大部分API调用方法,可参考调用

我这里只演示授权并获取用户信息

 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);  }}

常见问题整理

一、[0] cURL error 60: SSL certificate problem: unable to get local issuer certificate (see https://curl.haxx.se/libcurl/c/libcurl-errors.html) 错误

问题原因

该错误是由于 SSL证书 验证的原因

解决方案1

只需要把$apiInstance = new DefaultApi(new Client());改为$apiInstance = new DefaultApi(new Client(['verify'=>false])); 即可,主要是修改new Client()这里,其他API同样

AI抖音 AI抖音

AI抖音,会思考的抖音

AI抖音 860 查看详情 AI抖音

解决方案2: 下载一个ca-bundle.crt ,放到对应的目录,在php.ini文件中配置下路径
https://github.com/bagder/ca-bundle/blob/e9175fec5d0c4d42de24ed6d84a06d504d5e5a09/ca-bundle.crt
在php.ini的末尾加入 ,

curl.cainfo="真实路径/ca-bundle.crt"

重启web服务器

二、提示配置无效

调用授权登录接口https://open.douyin.com/platform/oauth/connect?client_key=xxx&response_type=code&scope=user_info&redirect_uri=redirect_uri&state=1提示授权失败或配置失效

了解Thinkphp集成抖音SDK的实现方法

问题原因

申请的应用为移动应用,实际调用为网页应用web扫码,网页应用在申请的时候有个授权域回调的配置,就是填写回调域名的

了解Thinkphp集成抖音SDK的实现方法

解决方案

重新申请网页应用,需要填写这个回调地址

了解Thinkphp集成抖音SDK的实现方法

三、获取用户信息报Invalid value for ‘e_account_role’, must be one of ‘EAccountM’, ‘EAccountS’, ‘EAccountK’

调用UserInfoApioauthUserinfoGetWithHttpInfo接口出现该错误

问题原因

由于返回用户信息里的e_account_role字段为null所导致,可通过修改API解决,这个错误一般为非正常调用API所导致,如:使用移动应用的client_key强制授权网页应用导致

解决方案

由于返回用户信息里的e_account_role字段为null所导致,可通过修改API解决
根据TP的错误提示我们可以发下报错发生在DouyinOpenModelOauthUserinfoResponseData.php line 564
错误发生在第564行代码

将563 – 570行注释掉即可获取正常用户信息

修改前:

了解Thinkphp集成抖音SDK的实现方法

修改后:

了解Thinkphp集成抖音SDK的实现方法

相关学习推荐:编程视频

以上就是了解Thinkphp集成抖音SDK的实现方法的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/353094.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年11月5日 23:18:29
下一篇 2025年11月5日 23:19:38

相关推荐

发表回复

登录后才能评论
关注微信