Thinkphp集成抖音SDK的实现方法 |
|
第一步:下载抖音官方SDK 下载地址:抖音SDK官方下载
第二步:将SDK导入 1.解压下载的压缩文件 2.在thinkphp项目的根目录(与application目录同级)下的
3.将解压出来的php-sdk/douyin_open/lib目录里面的所有文件和文件夹全部复制到刚才新建的
复制完成后目录结构如下
第三步:安装guzzlehttp依赖 因为抖音的SDK基本都是基于 我这里使用
第四步:接口调用 接口调用可参考下载的SDK内置的 我这里只演示授权并获取用户信息
<?php
/**
* 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);
}
}
常见问题整理 一、[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: 只需要把 解决方案2: 下载一个ca-bundle.crt ,放到对应的目录,在php.ini文件中配置下路径 curl.cainfo="真实路径/ca-bundle.crt" 重启web服务器 二、提示配置无效 调用授权登录接口
问题原因 申请的应用为
解决方案 重新申请网页应用,需要填写这个回调地址
三、获取用户信息报Invalid value for ‘e_account_role', must be one of ‘EAccountM', ‘EAccountS', ‘EAccountK' 调用 问题原因 由于返回用户信息里的 解决方案 由于返回用户信息里的 将563 - 570行注释掉即可获取正常用户信息
到此这篇关于Thinkphp集成抖音SDK的实现方法的文章就介绍到这了,更多相关Thinkphp集成抖音SDK内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家! |