PHP抖音SDK搭建问题整理

一、[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同样

解决方案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

提示授权失败或配置失效

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

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


三、获取用户信息报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的错误提示我们可以发下报错发生在Douyin\Open\Model\OauthUserinfoResponseData.php line 564

错误发生在第564行代码

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

修改前:

修改后:

更多问题陆续收集整理中,都是开发中遇到的一些问题

原文地址:https://www.cnblogs.com/lxwphp/p/15452807.html