Heim > Backend-Entwicklung > PHP-Tutorial > InfoStr-Autorisierungs-Anmeldeprozess für die Alipay-App-Anmeldeautorisierung

InfoStr-Autorisierungs-Anmeldeprozess für die Alipay-App-Anmeldeautorisierung

藏色散人
Freigeben: 2023-04-07 11:46:02
nach vorne
6919 Leute haben es durchsucht

Offizielle Website:

Server-SDK: https://docs.open.alipay.com/54/103419/

So verwenden Sie den Client zum Anmelden: https:// docs.open .alipay.com/218/105329/

App-Autorisierungs-Anmeldevorgang:

服务端先拿到 App 端 调用 支付宝 SDK 所需要的 infoStr
App 端 通过 infoStr 获得用户 授权 code
服务端通过 授权 code 拿到请求 token
服务端通过 token 获得用户信息
Nach dem Login kopieren

InfoStr-Autorisierungs-Anmeldeprozess für die Alipay-App-Anmeldeautorisierung

App-seitige Alipay-Anmeldeschritte:

1. Back-End-ÜbertragungsinfoStr

Offiziell ist es so geschrieben: https://docs.open.alipay.com/218/105325/

Sehen Sie sich das Beispiel hier an:

apiname=com.alipay.account.auth&app_id=xxxxx&app_name=mc&auth_type=AUTHACCOUNT&biz_type=openservice&method=alipay.open.auth.sdk.code.get&pid=xxxxx&product_id=APP_FAST_LOGIN&scope=kuaijie&sign_type=RSA2&target_id=20141225xxxx&sign=fMcp4GtiM6rxSIeFnJCVePJKV43eXrUP86CQgiLhDHH2u%2FdN75eEvmywc2ulkm7qKRetkU9fbVZtJIqFdMJcJ9Yp%2BJI%2FF%2FpESafFR6rB2fRjiQQLGXvxmDGVMjPSxHxVtIqpZy5FDoKUSjQ2%2FILDKpu3%2F%2BtAtm2jRw1rUoMhgt0%3D
Nach dem Login kopieren

Ich war zunächst sehr zuversichtlich, ob das SDK über die Methode alipay.open.auth.sdk.code.get verfügt, aber nach der globalen Suche habe ich dieses Wort nicht gesehen

Dann versuchen Sie es. Ich habe versucht, über diese Verbindung anzufragen, ob ich den Authcode erhalten würde, aber es ist immer noch fehlgeschlagen.

Meine Stimmung explodierte, und dann sah ich einen Blog und merkte, dass ich von Anfang an falsch lag. Es stellte sich heraus, dass für die Rücksendung nur eine Hintergrundspleißung erforderlich ist, keine Anfrage.

Vielleicht war die Idee am Anfang falsch, also habe ich den ganzen Nachmittag gekämpft.

Andere Entwickler zitieren:

InfoStr-Autorisierungs-Anmeldeprozess für die Alipay-App-Anmeldeautorisierung

Get infoStr

/**
 * InfoStr APP登录需要的的infostr
 * 
 * @return String
 */
public function infoStr()
{
    $infoStr = http_build_query([
        'apiname' => 'com.alipay.account.auth',
        'method' => 'alipay.open.auth.sdk.code.get',
        'app_id' => $this->app_id,
        'app_name' => 'mc',
        'biz_type' => 'openservice',
        'pid' => $this->pid,
        'product_id' => 'APP_FAST_LOGIN',
        'scope' => 'kuaijie',
        'target_id' => mt_rand(999, 99999), //商户标识该次用户授权请求的ID,该值在商户端应保持唯一
        'auth_type' => 'AUTHACCOUNT', // AUTHACCOUNT代表授权;LOGIN代表登录
        'sign_type' => 'RSA2',
    ]);
    $infoStr .= '&sign='.$this->enRSA2($infoStr);
    return $infoStr;
}
/**
 * enRSA2 RSA加密
 * 
 * @param String $data
 * @return String
 */
private function enRSA2($data)
{
    $str = chunk_split(trim($this->private_key), 64, "\n");
    $key = "-----BEGIN RSA PRIVATE KEY-----\n$str-----END RSA PRIVATE KEY-----\n";
    // $key = file_get_contents(storage_path('rsa_private_key.pem')); 为文件时这样引入
    $signature = '';
    $signature = openssl_sign($data, $signature, $key, OPENSSL_ALGO_SHA256)?base64_encode($signature):NULL;
    return $signature;
}
Nach dem Login kopieren

Der Code kommt von https:// learnku. com/articles/30076#replies

Das obige ist der detaillierte Inhalt vonInfoStr-Autorisierungs-Anmeldeprozess für die Alipay-App-Anmeldeautorisierung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:csdn.net
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage