私たちは WeChat パブリック プラットフォームを開発する予定で、最初のステップはもちろんパブリック アカウントを持つことです。何? WeChatの公式アカウントが何なのかは知りませんが、まずは練習に戻る必要があるようです(笑)。平たく言えば、私たちの WeChat プラットフォームは大きな社会のようなもので、そこには個人やさまざまな組織が含まれています。
WeChat を開発したい場合は、まずサーバーを用意する必要がありますが、サーバーがありません。現時点では、ピーナッツ シェルを使用してイントラネットをパブリック ネットワークにマップし、パブリック ネットワーク上の Web サイトにアクセスできるようにすることができます。入 それではアクセスコードを書きます。WeChat 上の PHP のみが例です。ここに添付されているのは
asp.netまず、Default.aspxを作成します。 Page_Loadをチェックイン: (MyLogはログクラスなので無視して構いません) checkSignature()に関しては、見つけたものとほぼ同じです。ここに投稿してください MyLog.DebugInfo("request default.aspx");
String echoStr = Request.QueryString["echostr"];
MyLog.DebugInfo("echoStr:"+echoStr);
if (this.checkSignature())
{
if(!string.IsNullOrEmpty(echoStr)){
MyLog.DebugInfo("echostr:" + echoStr);
Response.Write(echoStr);
Response.End();
}
}
private bool checkSignature() { string signature = Request["signature"]; string timestamp = Request["timestamp"]; string nonce = Request["nonce"]; MyLog.DebugInfo(String.Format("signature:{0},timestamp:{1},nonce:{2}", signature, timestamp, nonce)); string token = TOKEN; string[] tmpArr = new string[] { token, timestamp, nonce }; Array.Sort(tmpArr); string tmpStr = string.Join("", tmpArr); //sha1加密 System.Security.Cryptography.SHA1 sha1 = new System.Security.Cryptography.SHA1CryptoServiceProvider(); byte[] secArr = sha1.ComputeHash(System.Text.Encoding.Default.GetBytes(tmpStr)); tmpStr = BitConverter.ToString(secArr).Replace("-", "").ToLower(); MyLog.DebugInfo(String.Format("after parse:{0}", tmpStr)); if (tmpStr == signature) { MyLog.DebugInfo("true"); return true; } else { return false; } }
Response.end ()
の問題が原因で、私が長い間この作業を行ってきたため、助けてくれる人々を助けることを願って、ここに記録します。WeChat サーバーが原因でトークンの検証が失敗した可能性もあります。私のように 1 回だけクリックしないでください。 ! !
以上がWeChat開発のためのasp.netアクセス方法の紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。