ホームページ  >  記事  >  WeChat アプレット  >  C# WeChat 開発サーバーの構成手順の使用

C# WeChat 開発サーバーの構成手順の使用

高洛峰
高洛峰オリジナル
2017-03-12 09:07:561617ブラウズ

この記事では、WeChat 開発における サービスサーバー構成に関連する C# 関連コンテンツを主に紹介します 興味のある友人は参照してください

編集者は WeChat 開発に非常に興味があり、インターネット上の関連記事をチェックしました。みんなが一緒に勉強しやすいように。

1. アカウントを登録します - サーバー設定を入力します

https://mp.weixin.qq.com/ にアカウントを登録します

サービス アカウントは、WeChat パブリック アカウントです。会社、購読アカウントは個人によって申請され、個人権限は比較的少ないです

WeChat パブリック プラットフォームの公式 Web サイトにログインした後、パブリック プラットフォームのバックエンド管理ページ - 開発者センター ページで、[変更] をクリックします。 [構成] ボタン

を選択し、サーバー アドレス (URL)、トークン、エンコーディング AESキー を入力します。ここで URL は、開発者が WeChat メッセージやイベントを受信するために使用するインターフェースURL です。トークンは開発者が任意に入力し、署名の生成に使用できます (トークンは、セキュリティを検証するためにインターフェース URL に含まれるトークンと比較されます)。 EncodingAESKey は開発者によって手動で入力されるか、ランダムに生成され、メッセージ本文の暗号化キーおよび復号化キーとして使用されます。 同時に、開発者はメッセージの暗号化と復号化の方法を選択できます: プレーンテキスト

モード

、互換性モードセキュリティモード。モードの選択とサーバー構成は、送信後すぐに有効になります。開発者は慎重に入力して選択することをお勧めします。暗号化および復号化方式のデフォルトの状態は、互換モードとセキュリティ モードを選択するために、事前に関連する暗号化および復号化コードを設定する必要があります。詳細については、メッセージ本文の署名と暗号化と復号化に関するドキュメントを参照してください。セクション。

C# WeChat 開発サーバーの構成手順の使用

URL はポート 80 である必要があり、サーバー上にのみ存在できます。 ! !

2. URL が有効かどうかを確認します

C# WeChat 開発サーバーの構成手順の使用

private string Token = ConfigurationManager.AppSettings["Token"];
 
[HttpGet]
[ActionName("Index")]
public ActionResult Get(string signature, string timestamp, string nonce, string echostr)
{
 if (CheckSignature.Check(signature, timestamp, nonce, Token))
 {
 return Content(echostr);//返回随机字符串则表示验证通过
 }
 else
 {
 return Content("failed:" + signature + "," + CheckSignature.GetSignature(timestamp, nonce, Token) + "。如果你在浏览器中看到这句话,说明此地址可以被作为微信公众账号后台的Url,请注意保持Token一致。");
 }
}
/// <summary>
/// 检查签名是否正确
/// </summary>
/// <param name="signature"></param>
/// <param name="timestamp"></param>
/// <param name="nonce"></param>
/// <param name="token"></param>
/// <returns></returns>
public static bool Check(string signature, string timestamp, string nonce, string token = null)
{
 return signature == GetSignature(timestamp, nonce, token);
}
 
/// <summary>
/// 返回正确的签名
/// </summary>
/// <param name="timestamp"></param>
/// <param name="nonce"></param>
/// <param name="token"></param>
/// <returns></returns>
public static string GetSignature(string timestamp, string nonce, string token = null)
{
 token = token ?? Token;
 var arr = new[] { token, timestamp, nonce }.OrderBy(z => z).ToArray();
 var arrString = string.Join("", arr);
 //var enText = FormsAuthentication.HashPasswordForStoringInConfigFile(arrString, "SHA1");//使用System.Web.Security程序集
 var sha1 = System.Security.Cryptography.SHA1.Create();
 var sha1Arr = sha1.ComputeHash(Encoding.UTF8.GetBytes(arrString));
 StringBuilder enText = new StringBuilder();
 foreach (var b in sha1Arr)
 {
 enText.AppendFormat("{0:x2}", b);
 }
 
 return enText.ToString();
}

確認が成功した場合にのみ、引き続き他の機能を使用できます。送信が失敗した場合は、自分でログを作成して理由を確認できます。

エディターも WeChat 開発の初心者です。

asp.net

WeChat 開発に関するいくつかの記事をまとめました。今日は、エディターも初心者なので、C# WeChat 開発に関する関連知識をまとめ始めます。厳しいところや間違ったところがあるかもしれませんが、ご容赦ください。一緒に進歩していきましょう。

以上がC# WeChat 開発サーバーの構成手順の使用の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。