nginx - WeChat JSSDK、構成の実行時にエラーが報告されます: 無効な署名
给我你的怀抱
给我你的怀抱 2017-05-16 17:23:32
0
8
1037

1、計算された署名は WeChat が提供するサンドボックスと一致しています: http://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=jsapisign
2. 問題を解決するために 2 つの方法を使用しようとしましたが、同じエラーが発生しました。 1) URL をローカルからサーバーに渡し、ajax を通じてサーバーの json データを取得し、wx のコンテンツを入力します。 .config; 2)、サーバーから取得します この訪問へのリンク
3. nginx をリバース ドメイン名プロキシとして使用しますが、アップストリーム用に処理されています
結論: WeChat の JSSDK にはバグがある疑いがあります

给我你的怀抱
给我你的怀抱

全員に返信(8)
左手右手慢动作

確認が必要な場合があります
1) WeChat の jsticket をサーバー上でグローバルにキャッシュしますか? 新しい jsticket が取得された後、元の jsticket (access_token を含む) が更新されます
2) クエリ文字列などを含め、URL が一貫しているかどうか
3) nonceStr と timestamp が署名と一致しているかどうか

いいねを押す +0
Ty80

また、バグがあるのではないかと思います。無効な署名は Android では無効ですが、iOS では正しいです。そしてそれは公式のデバッグページに渡されますが、元の投稿者は現在それを解決しているのでしょうか?

いいねを押す +0
过去多啦不再A梦

おそらく

はバックグラウンドで生成され、フォアグラウンドに書き込まれます。 url传入的问题,建议wx.config

私のような

リーリー

それでは

リーリー リーリー

いいねを押す +0
仅有的幸福

投稿者の問題は解決しましたか? 私も同じ問題を抱えています。WeChat のテスト ツールと比較するためにインターフェイスもテストしましたが、無効な署名が表示され続けます。

いいねを押す +0
给我你的怀抱

署名は公式のものと同じで、URLもlocation.href.split('#')[0]で取得されます。 。 また、公式アカウントの JS インターフェイス セキュリティ ドメイン名も正常に構成されていますが、動作しません。 。 神様に助けを求めてください
テストアドレス: http://weixin.zhjckx.com/ApiWeiXin/JsSdk

いいねを押す +0
淡淡烟草味

他の人からの私の返信をチェックしてください:

/q/1010000002502269/a-1020000002549180X2X

いいねを押す +0
Ty80

私が遭遇した状況は、署名生成時に現在のURLを取得する際に、laravelフレームワークのURL:full()メソッドが使用されていたということでした。その結果、このメソッドは URL 内のクエリ文字列の順序を並べ替えます。たとえば、アクセスしたときの URL は

リーリー

、URL:full() を使用して得られた結果は

リーリー

正直で実用的な WeChat 公式サンプルに変更されました:

リーリー

大丈夫です。

いいねを押す +0
阿神

自分で修正してテストしましたが、問題ありませんでした。理由は公式のhttpGet関数が使えないからです。

jssdk.phpのこれら2つの文を教えてください

リーリー
いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート