|
|
@@ -3,8 +3,6 @@ namespace common\components\delivery\platform\fengniao;
|
|
|
|
|
|
use common\components\delivery\helpers\HttpClient;
|
|
|
use Yii;
|
|
|
-use yii\helpers\Json;
|
|
|
-use linslin\yii2\curl;
|
|
|
|
|
|
class Auth
|
|
|
{
|
|
|
@@ -51,7 +49,6 @@ class Auth
|
|
|
*/
|
|
|
public function generateAuthUrl($redirectUri)
|
|
|
{
|
|
|
- //$redirectUri = urlencode($redirectUri);
|
|
|
$params = [
|
|
|
'appId' => $this->appId,
|
|
|
'devId' => 133146508, // 蜂鸟开放平台 【开发者中心】->【应用管理】->【发起商户授权】获得的
|
|
|
@@ -83,11 +80,6 @@ class Auth
|
|
|
*/
|
|
|
protected function generateSignature(array $params)
|
|
|
{
|
|
|
- // Step 1: 过滤空值 -- 不能清除,不然 code 就被排除了
|
|
|
-// $params = array_filter($params, function ($v) {
|
|
|
-// return $v !== null && $v !== '';
|
|
|
-// });
|
|
|
-
|
|
|
// Step 2: 按字典序排序
|
|
|
ksort($params);
|
|
|
|
|
|
@@ -95,9 +87,6 @@ class Auth
|
|
|
$paramStr = '';
|
|
|
$first = true;
|
|
|
foreach ($params as $key => $value) {
|
|
|
-// if ($value == "") {
|
|
|
-// $value = "''";
|
|
|
-// }
|
|
|
if ($first) {
|
|
|
$paramStr = "{$key}={$value}";
|
|
|
$first = false;
|
|
|
@@ -108,7 +97,6 @@ class Auth
|
|
|
|
|
|
// Step 4: 拼接 appSecret
|
|
|
$signBefore = $this->appSecret . $paramStr;
|
|
|
- //$signBefore = '1111app_id=222&code=4444&grant_type=authorization_code&merchant_id=333×tamp=1719297100558';
|
|
|
// Step 5: 使用SHA-256加密
|
|
|
$signature = hash('sha256', $signBefore);
|
|
|
|
|
|
@@ -176,7 +164,7 @@ class Auth
|
|
|
//$params['code'] = "";
|
|
|
}
|
|
|
|
|
|
- // 生成签名
|
|
|
+ // 生成签名
|
|
|
$signature = $this->generateSignature($params);
|
|
|
$params['signature'] = $signature;
|
|
|
|
|
|
@@ -185,11 +173,6 @@ class Auth
|
|
|
$response = HttpClient::post($url, $params, [
|
|
|
'Content-Type' => 'application/json',
|
|
|
]);
|
|
|
-
|
|
|
-// $curl = new curl\Curl();
|
|
|
-// $response = $curl->setOption(CURLOPT_POSTFIELDS, Json::encode($params))->post($url);
|
|
|
-// $response = Json::decode($response);
|
|
|
-
|
|
|
Yii::info("[FengniaAuth] GetAccessToken Response: " . json_encode($response));
|
|
|
|
|
|
return $this->parseResponse($response);
|