>  기사  >  위챗 애플릿  >  C# WeChat 개발 서버 구성 지침 사용

C# WeChat 개발 서버 구성 지침 사용

高洛峰
高洛峰원래의
2017-03-12 09:07:561616검색

이 글은 주로 C#위챗 개발 관련 내용 서비스 서버 구성을 소개하고 있으니 관심 있는 분들은 참고하시기 바랍니다

편집자는 WeChat 개발에 많은 관심을 가지고 있으며 인터넷에서 관련 기사를 검토하여 모두가 함께 배울 수 있도록 정리했습니다.

1. 계정 등록 -

https://mp.weixin.qq.com/ WeChat에서 입력하세요. 공개 플랫폼 계정 등록

서비스 계정은 회사에서 적용한 WeChat 공개 계정이며, 구독 계정은 개인이 적용하며 개인 권한이 적습니다.

로그인 후; 위챗 공개 플랫폼 공식 홈페이지, 공개 플랫폼 백엔드 관리 페이지로 이동 - 개발자 센터 페이지에서 "구성 수정"

버튼을 클릭하고, 서버 주소(URL), 토큰 입력 EncodingAES , 여기서 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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.