


WeChat ポータルとアプリケーションの C# 開(kāi)発 - WeChat エンタープライズ アカウントからのメッセージとイベントの受信、処理、復(fù)號(hào)化
Feb 18, 2017 am 09:42 AM前回のエッセイ「WeChat ポータルとアプリケーションの C# 開(kāi)発 (19) - WeChat エンタープライズ アカウントのメッセージ送信 (テキスト、畫(huà)像、ファイル、音聲、ビデオ、グラフィック メッセージなど)」では、エンタープライズ アカウントのメッセージ送信について紹介しました。公式の特別な聲明メッセージは暗號(hào)化せずに送信されます。ただし、Web サイトのサーバーであるコールバック サーバーでは、WeChat から送信されるメッセージは暗號(hào)化されており、メッセージとイベントを復(fù)號(hào)化するためにクラス ライブラリを呼び出す必要があります。公式のサンプルが不完全であるため、多くの時(shí)間を費(fèi)やしました。最後に、受信したさまざまなメッセージとイベントが正常に復(fù)號(hào)化されました。この記事では主に、WeChat エンタープライズ アカウントでのメッセージとイベントの受信、処理、復(fù)號(hào)化の操作を紹介します。
1. エンタープライズ アカウントのコールバック モードの設(shè)定
パブリック アカウントと同様に、WeChat エンタープライズ アカウントで二次開(kāi)発が必要な場(chǎng)合は、次のインターフェイスに示すように、対応するコールバック パラメーターをバックグラウンドで設(shè)定する必要があります。
これらを設(shè)定してチェックに合格すると、獨(dú)自の WeChat アプリケーション サーバーでメッセージを送受信できるようになります。
コールバックメッセージのエントリでは、POSTデータと通常のGETデータを別々に処理する必要があります。GETデータはWeChat獨(dú)自の検証処理であり、POSTデータはWeChatメッセージの対話的な操作です。
????///?<summary> ????///?企業(yè)號(hào)回調(diào)信息接口。統(tǒng)一接收并處理信息的入口。????///?</summary> ????public?class?corpapi?:?IHttpHandler ????{????????///?<summary> ????????///?處理企業(yè)號(hào)的信息????????///?</summary> ????????///?<param name="context"></param> ????????public?void?ProcessRequest(HttpContext?context) ????????{
上記では、メッセージを処理するための一般的なアプリケーション ハンドラーを定義しました。
次に、さまざまなメッセージ タイプ (POST、GET メソッド) を分離し、それに応じて処理します。
????????????????????if?(HttpContext.Current.Request.HttpMethod.ToUpper()?==?"POST") ????????????????????{????????????????????????using?(Stream?stream?=?HttpContext.Current.Request.InputStream) ????????????????????????{ ????????????????????????????Byte[]?postBytes?=?new?Byte[stream.Length]; ????????????????????????????stream.Read(postBytes,?0,?(Int32)stream.Length); ????????????????????????????postString?=?Encoding.UTF8.GetString(postBytes); ????????????????????????}????????????????????????if?(!string.IsNullOrEmpty(postString)) ????????????????????????{ ????????????????????????????Execute(postString,?accountInfo); ????????????????????????} ????????????????????}????????????????????else ????????????????????{ ????????????????????????Auth(accountInfo); ????????????????????}
2. WeChatコールバックメッセージの検証
以下は、WeChatのコールバックモードと検証URLの手順です。
URL の有効性を確認(rèn)します
上記の情報(bào)を送信すると、企業(yè)アカウントは入力された URL に GET リクエストを送信します。GET リクエストには 4 つのパラメーターが含まれます。 企業(yè)は取得時(shí)に URL デコード処理を行う必要があります。そうでない場(chǎng)合、検証は失敗します。
説明 | 必須ですか? | |
---|---|---|
WeChat暗號(hào)化署名、msg_signatureは、企業(yè)によって入力されたトークン、リクエスト內(nèi)のタイムスタンプ、nonceパラメータ、および暗號(hào)化されたメッセージを組み合わせます。 body | はい | |
timestamp | は | |
亂數(shù) | は | |
暗號(hào)化されたランダムですmsg_encrypt 形式で提供される文字列。 echostr 平文を復(fù)號(hào)して返す必要があります。random、msg_len、msg、$CorpID は最初の検証に含める必要があります。 |

ホットAIツール

Undress AI Tool
脫衣畫(huà)像を無(wú)料で

Undresser.AI Undress
リアルなヌード寫(xiě)真を作成する AI 搭載アプリ

AI Clothes Remover
寫(xiě)真から衣服を削除するオンライン AI ツール。

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無(wú)料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡(jiǎn)単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無(wú)料のコードエディター

SublimeText3 中國(guó)語(yǔ)版
中國(guó)語(yǔ)版、とても使いやすい

ゼンドスタジオ 13.0.1
強(qiáng)力な PHP 統(tǒng)合開(kāi)発環(huán)境

ドリームウィーバー CS6
ビジュアル Web 開(kāi)発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)