この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。

眺める: 18189|答える: 0

[WebAPI] ASP.NET WEB APIはWeChatのリクエストに応答します

[リンクをコピー]
掲載地 2018/11/24 15:59:26 | | | |
WeChatトークン検証

戻って来てください

1. WeChatの公開プラットフォームのアクセス方法は、4つのパラメータ(署名、タイムスタンプ、ノンス、エコーストラル)と1トークン(両側に対応する)のみです。

2. トークン、タイムスタンプ、ノンス辞書をソートした後、「SHA1」という文字列に従って暗号化します。 文字列 tmpStr(小文字に変換済み)が得られます

3. 次に、tmpStrが署名と等しいかどうかを比較します。もし等しいなら、要求はWeChatからのものであることになります。


4. 依頼がWeChatから来ることを確実にすれば、大きな一歩を踏み出したことになります。 残りの一つは、エコーストラパラメータをWeChatの公開プラットフォームに送信する作業です。

署名認証は成功しましたが、以下のようにxml形式の文字列を返したため、WeChatはトークンを返しません。



解決:



ここで強調すべきは、PHPのecho $echoStrやWebFromのResponse.Write(echoStr)などです。
何度もデバッグした結果、WeChatの受け入れ方法は「application/x-www-form-urlencoded」としてしか受け入れられないことが判明し、HttpResponseMessageを使って出力メソッドを指定しました。 ついにテストは成功しました!


ただ、個人的には上記の文は間違っていないと思いますが、テストするのが面倒なので、「text/plain」を対応するタイプに設定しても問題ないはずです。

POSTの帰還

近年、WeChatの決済機能はWeChatのミニプログラム開発に活用され、インターフェース開発にはWEB API ASP.NET 活用されています。

支払いが成功すると、インターフェースはWeChatサーバーから支払い通知結果を受け取り、データを処理してWeChatサービスに返します。

WeChatサーバーは返送されたデータを認識せず、重複通知が発生しています。

最終的な解像度コードは以下の通りです。








先の:知虎ライブの知識共有コレクション
次に:斉白石全集、pdf
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。

Mail To:help@itsvse.com