この一連のエッセイの冒頭では、主に WeChat パブリック アカウント用のポータル アプリケーションの開発について紹介します。最近、WeChat フレームワーク全體が拡張および補足され、最新の API カプセル化とエンタープライズ アカウントの開発が追加されました。フォローアップでは主に C# を使用して WeChat エンタープライズ アカウントを開発する方法を紹介します。この記事は WeChat エンタープライズ アカウントの開発の出発點として機能し、WeChat エンタープライズ アカウントの構成と使用方法を紹介します。
1. WeChatエンタープライズアカウントの登録とログイン
エンタープライズアカウントは、パブリックアカウントとサブスクリプションアカウントに続くもう1つのWeChatタイプです。 Enterprise Account は、WeChat が企業(yè)顧客向けに提供するモバイル アプリケーション ポータルです。これは、企業(yè)が従業(yè)員、上流および下流のサプライ チェーン、企業(yè) IT システム間の接続を確立するのに役立ちます。エンタープライズ アカウントを使用すると、企業(yè)またはサードパーティ パートナーは、企業(yè)が高品質(zhì)のモバイル ライト アプリケーションを迅速かつコスト効率よく実裝して、生産、管理、コラボレーション、および運用のモバイル化を実現(xiàn)できるように支援できます。
個人的に、Enterprise アカウントの最大のハイライトは、メッセージを無制限に送信できることであり、企業(yè)の従業(yè)員間のコミュニケーションがスムーズに行えることだと考えています。パブリックアカウントやサブスクリプションアカウントと比較して、WeChatエンタープライズアカウントはメッセージの送信においてより慎重であると言えます。ただし、WeChat エンタープライズ アカウントは內(nèi)部アドレス帳を作成する必要があり、フォローする前にアドレス帳の WeChat ID、電子メール アドレス、電話番號が一致する必要があります。これは、他の外部者が自由にフォローできないことを意味します。さらに、セキュリティ上の理由から、監(jiān)査プロセスである 2 段階認証を設定することもできます。
エンタープライズアカウントの認証は、パブリックアカウントの認証と同様に、関連する企業(yè)認証書類を提出する必要があり、認証手數(shù)料が毎年請求されます。それ以外の場合は、人員と機能にいくつかの制限がかかる場合があります。 WeChatは本當にお金を稼ぐ方法を見つけようとしていると感じます。既存の課金モデルにはサブスクリプションアカウント、公式アカウント、エンタープライズアカウント、オープンプラットフォームが含まれており、それらはすべて認証手數(shù)料がかかり、WeChatストアもデポジットを徴収する必要があります。 20萬、全部お金ですよ。
もう言うことはありませんが、WeChat の登録アドレスは https://qy.weixin.qq.com です。1 つのメール アドレスで WeChat 公式アカウントと WeChat エンタープライズ アカウントを同時に登録することはできません。
企業(yè)が企業(yè)アカウントを開設して使用を開始するには 4 つの手順が必要です
1) 企業(yè)は公式 WeChat Web サイト ( http://qy.weixin.qq.com ) にアクセスしてアクティベーションを申請します。
2) アクティベーション後、企業(yè)はエンタープライズ アカウント管理バックエンドに移動し、メンバーをインポートし、QR コードを公開します。3) 企業(yè)はエンタープライズ アカウント API を呼び出して、開発用に企業(yè)獨自のシステムと連攜します。4) 従業(yè)員は支払いを行います。注意を払い、WeChat 情報を受信し、WeChat で企業(yè)と対話します 企業(yè)アカウントを登録します。WeChat を介してスキャンし、企業(yè)の QR コードをスキャンしてログインできます。スキャンするときは、入力を続ける前に WeChat で確認する必要があります。操作畫面は以下の通りです(左が攜帯電話のスクリーンショット、右がWebページのスクリーンショット)。
URL、トークン、暗號化の検証処理の詳細については、後続の「メッセージ受信時の暗號化?復號化処理」を參照してください。
私の會社のエンタープライズアカウントを設定した後のインターフェイスは次のとおりです。
この URL で指定されているページ関數(shù)は、データを解析して WeChat サーバーに返す必要があるため、この処理関數(shù)の入り口をサーバーに事前にデプロイする必要があります。
上記の機能に加えて、使用する必要のある CorpID パラメータもあります。これは、バックグラウンドのメイン インターフェイスの [設定] で表示できます。
次に、Web サイトのバックエンドを使いやすくするために、以下に示すように、公式アカウントの構成と同じように Web.Config に配置します。
3. コールバック ページの機能開発を実裝する
コールバック ページで使用する必要があるいくつかの構成項目を以前に紹介しましたが、このセクションでは引き続き、エンタープライズ アカウント情報のポストバックを実裝する方法を紹介します。コールバックテストに合格できることを確認します。
コールバックテストのデータはGetメソッドを通じて送信されるため、処理ロジックのコードは以下のようになります。パブリックアカウントと似ていますが、実裝部分が異なります。
????///?<summary> ????///?企業(yè)號回調(diào)信息接口。統(tǒng)一接收并處理信息的入口。????///?</summary> ????public?class?corpapi?:?IHttpHandler ????{????????///?<summary> ????????///?處理企業(yè)號的信息????????///?</summary> ????????///?<param name="context"></param> ????????public?void?ProcessRequest(HttpContext?context) ????????{????????????string?postString?=?string.Empty;????????????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); ????????????????} ????????????}????????????else ????????????{????????????????Auth(); ????????????} ????????}????????///?<summary> ????????///?成為開發(fā)者的第一步,驗證并相應服務器的數(shù)據(jù)????????///?</summary> ????????private?void?Auth() ????????{????????????#region?獲取關鍵參數(shù)????????????string?token?=?ConfigurationManager.AppSettings["CorpToken"];//從配置文件獲取Token ????????????if?(string.IsNullOrEmpty(token)) ????????????{ ????????????????LogTextHelper.Error(string.Format("CorpToken?配置項沒有配置!")); ????????????}????????????string?encodingAESKey?=?ConfigurationManager.AppSettings["EncodingAESKey"];//從配置文件獲取EncodingAESKey ????????????if?(string.IsNullOrEmpty(encodingAESKey)) ????????????{ ????????????????LogTextHelper.Error(string.Format("EncodingAESKey?配置項沒有配置!")); ????????????}????????????string?corpId?=?ConfigurationManager.AppSettings["CorpId"];//從配置文件獲取corpId ????????????if?(string.IsNullOrEmpty(corpId)) ????????????{ ????????????????LogTextHelper.Error(string.Format("CorpId?配置項沒有配置!")); ????????????}? ????????????#endregion ????????????string?echoString?=?HttpContext.Current.Request.QueryString["echoStr"];???????????? ????????????string?signature?=?HttpContext.Current.Request.QueryString["msg_signature"];//企業(yè)號的?msg_signature ????????????string?timestamp?=?HttpContext.Current.Request.QueryString["timestamp"];???????????? ????????????string?nonce?=?HttpContext.Current.Request.QueryString["nonce"];???????????? ????????????string?decryptEchoString?=?"";???????????? ????????????if?(new?CorpBasicApi().CheckSignature(token,?signature,?timestamp,?nonce,?corpId,?encodingAESKey,?echoString,?ref?decryptEchoString)) ????????????{????????????????if?(!string.IsNullOrEmpty(decryptEchoString)) ????????????????{ ????????????????????HttpContext.Current.Response.Write(decryptEchoString); ????????????????????HttpContext.Current.Response.End(); ????????????????} ????????????} ????????}
具體的な処理コードは以下の通りです。 WeChat Enterprise Account の付録で提供されている SDK のみを使用しました。
????///?<summary> ????///?企業(yè)號基礎操作API實現(xiàn)????///?</summary> ????public?class?CorpBasicApi?:?ICorpBasicApi ????{????????///?<summary> ????????///?驗證企業(yè)號簽名????????///?</summary> ????????///?<param name="token">企業(yè)號配置的Token</param> ????????///?<param name="signature">簽名內(nèi)容</param> ????????///?<param name="timestamp">時間戳</param> ????????///?<param name="nonce">nonce參數(shù)</param> ????????///?<param name="corpId">企業(yè)號ID標識</param> ????????///?<param name="encodingAESKey">加密鍵</param> ????????///?<param name="echostr">內(nèi)容字符串</param> ????????///?<param name="retEchostr">返回的字符串</param> ????????///?<returns></returns> ????????public?bool?CheckSignature(string?token,?string?signature,?string?timestamp,?string?nonce,?string?corpId,?string?encodingAESKey,?string?echostr,?ref?string?retEchostr) ????????{ ????????????WXBizMsgCrypt?wxcpt?=?new?WXBizMsgCrypt(token,?encodingAESKey,?corpId);???????????? ????????????int?result?=?wxcpt.VerifyURL(signature,?timestamp,?nonce,?echostr,?ref?retEchostr);???????????? ????????????if?(result?!=?0) ????????????{ ????????????????LogTextHelper.Error("ERR:?VerifyURL?fail,?ret:?"?+?result);???????????????? ????????????????return?false; ????????????}???????????? ????????????return?true;???????????? ????????????//ret==0表示驗證成功,retEchostr參數(shù)表示明文,用戶需要將retEchostr作為get請求的返回參數(shù),返回給企業(yè)號。???????????? ????????????//?HttpUtils.SetResponse(retEchostr); ????????}
WeChat ポータルの C# 開発と WeChat エンタープライズ アカウント構成のアプリケーションおよび使用関連記事の詳細については、PHP 中國語 Web サイトに注目してください。

ホットAIツール

Undress AI Tool
脫衣畫像を無料で

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

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

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

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

SublimeText3 中國語版
中國語版、とても使いやすい

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

ドリームウィーバー CS6
ビジュアル Web 開発ツール

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