php WeChat ログイン 41001 エラーの解決策: 1. ログを確認します; 2. ストリップスラッシュを使用してバックスラッシュを削除します; 3. json_decode を使用してデコードします。
この記事の動作環境: Windows7 システム、PHP7.1 バージョン、DELL G3 コンピューター
方法PHP WeChatログイン41001エラーの問題を解決しますか?
ミニ プログラムのログインでユーザー データの暗号化が解除される暗号化データ -41001: エンコーディング AesKey が不正です
ミニ プログラムの WeChat 認証ログイン時に遭遇した落とし穴、問題はついに解決されました
共有ここで問題解決のためのアイデアをいくつか紹介します。
質問:
ミニ プログラムに対して WeChat 認証ログインを行うには、まずコードを取得し、次に session_key と open_id を取得し、次に encryptedData を取得して渡します。サーバーに送信して復号化します ユーザー情報は取得できますが、成功する場合と-41001エラーが返される場合があります ログを見るとsession_keyが取得されているのですが原因と解決方法は何ですか?
解決策:
session_key の有効期限がわからなかったため、最初に検討した方向は session_key の有効期限でした。多くのテストの後、これが次のとおりであることがわかりました。理由ではありません。結果として
#その後、さまざまな関連ブログを参照し、関連する問題を検索し始めましたが、最終的には解決策が見つかりませんでした。おそらく、この問題は不適切すぎるため、この分野には多くの問題はありません 最後に、復号化された SDK ソース コードを調べ始めたところ、-41001 の理由は session_key の長さを確認するためであることがわかりました。if (strlen($this->sessionKey) != 24) { return ErrorCode::$IllegalAesKey; } //public static $IllegalAesKey = -41001; //>-41001: encodingAesKey 非法
$str = stripslashes($json); $arr = json_decode($str,true);
#*これは小さな質問です。記録して長い記憶に残してください。
推奨学習: 「
PHP ビデオ チュートリアル以上がPHP WeChatログイン41001エラーの問題を解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。