讨论数量:
实际获取access_token 不需要这一步,回调url会有 authCode ,userId
secretKey 可以在应用管理获取,通过这几个参数就可以获取到access token
非要验签的话这个可以
$params = [
'appId' => "",
'authCode' => "",
'userId' => "",
'timestamp' => "",
'state' => "",
];
ksort($params);
$bytes = base64_encode(json_encode($params));
$key = substr($secretKey, 0, 16);
$aec_offset = "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0";
function encryptAES_CBC_NoPadding($source, $key, $iv): string
{
$dataLength = strlen($source);
if ($dataLength % 16 != 0) {
$dataLength = $dataLength + (16 - ($dataLength % 16));
}
$source = str_pad($source, $dataLength, "\0", STR_PAD_RIGHT);
$encrypted = openssl_encrypt($source, 'AES-128-CBC', $key, OPENSSL_RAW_DATA | OPENSSL_ZERO_PADDING, $iv);
return strtoupper(bin2hex($encrypted));
}
echo encryptAES_CBC_NoPadding($bytes, $key, $aec_offset);
实际获取access_token 不需要这一步,回调url会有 authCode ,userId
secretKey 可以在应用管理获取,通过这几个参数就可以获取到access token
非要验签的话这个可以