抖音获取手机号:https://developer.open-douyin.com/docs/resource/zh-CN/mini-app/develop/guide/open-capabilities/acquire-phone-number-acquire
抖音解密文档:https://developer.open-douyin.com/docs/resource/zh-CN/mini-app/develop/guide/open-capabilities/sensitive-data-process
$input = file_get_contents('php://input');
$param = json_decode($input, true);
$data['appid'] = $douyin_appid;
$data['secret'] = $douyin_secret;
$data['code'] = $param['code'];
$url = 'https://developer.toutiao.com/api/apps/v2/jscode2session';
$result = douyin_request($url, json_encode($data));
$key = $result['data']['session_key'];
$sign = $param['encryptedData'];
$iv = $param['iv'];
$result = openssl_decrypt(base64_decode($sign, true), 'AES-128-CBC', base64_decode($key), OPENSSL_RAW_DATA, base64_decode($iv));
$phone = json_decode($result, true);
var_dump($phone);
function douyin_request($url, $data = [])
{
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt(
$curl,
CURLOPT_HTTPHEADER,
array(
'Content-Type: application/json; charset=utf-8',
)
);
$output = curl_exec($curl);
curl_close($curl);
return json_decode($output, true);
}