>위챗 애플릿 >위챗 개발 >C# WeChat 포털 및 애플리케이션 개발(1) - WeChat 인터페이스 사용 시작

C# WeChat 포털 및 애플리케이션 개발(1) - WeChat 인터페이스 사용 시작

高洛峰
高洛峰원래의
2017-02-16 16:27:341549검색

WeChat 애플리케이션이 본격화되고 있으며 많은 기업에서 Information Express에 참여하기를 희망하고 있습니다. 이는 비즈니스 기회이자 기술적인 방향이므로 시간이 있을 때 WeChat 관련 개발에 대해 연구하고 배우는 것이 하나의 방법이 되었습니다. 일일 계획에서 중요한 것. 이 시리즈 기사에서는 WeChat의 관련 개발 프로세스와 관련 경험 요약을 단계별 관점에서 포괄적으로 소개하고 모든 사람이 관련 개발 프로세스를 이해할 수 있기를 바랍니다. 이 에세이는 주로 WeChat 개발 프로세스의 예비 준비와 일부 초기 작업 소개에 중점을 둡니다.

이 글을 쓰기 일주일 전, 저는 주로 위챗 퍼블릭 플랫폼의 일부 소개 글과 관련 인터페이스 지침을 참고하고 C# 코드 개발을 결합하여 우리 회사의 포털 인터페이스를 정리하고 위챗을 작업으로 구현했습니다. 진행됨에 따라 회사 계정의 예비 사용자 상호 작용 및 정보 표시 작업에 점점 더 많은 기능이 추가될 수 있으며, 애플리케이션 관점에서 WeChat 인터페이스를 확장하여 WeChat 인터페이스에 대한 기술적 탐색과 이해를 실현할 수 있기를 바랍니다. .

1. WeChat 계정

WeChat 플랫폼 API를 개발하고 사용하려면 WeChat 공개 플랫폼(https://mp.weixin.qq.com/)에 등록하고 서비스 계정 또는 구독 계정. 구독 계정은 주로 기업과 개인을 위한 계정입니다. 필요합니다.

일부 고급 인터페이스를 사용하려면 서비스 계정과 고급 인증이 필요할 수 있습니다. 계좌 등록 과정에서는 신청서를 다운로드 받아 인쇄한 후 직인을 찍어야 합니다. 또한 신청자는 신분증과 함께 사진을 찍어야 합니다(좀 이상하네요, 하하). 검토를 위해 서버에 업로드하면 일반적으로 승인을 빨리 얻을 수 있습니다.

회사 이름으로 서비스 계정을 신청했습니다. 계정이 등록되면 기본 인터페이스에 관련 정보가 표시됩니다. 또한 QR 코드가 적용됩니다. 회사 계정을 입력하기 위한 QR 코드는 확인 대화 상자를 따르므로 매우 편리합니다. 다음은 제가 신청한 회사 계정의 QR 코드입니다. 바로 스캔할 수 있습니다.

C# WeChat 포털 및 애플리케이션 개발(1) - WeChat 인터페이스 사용 시작

2. WeChat 메뉴 정의

WeChat에는 두 가지 메뉴 정의 방식이 있는데, 하나는 편집 모드이고 다른 하나는 개발 모드입니다. 즉, 개발 모드를 채택하면 편집 모드를 사용할 수 없으며 그 반대의 경우도 마찬가지입니다. 편집 중인 메뉴는 실제로 관리가 가능하지만, 위챗에서는 지원하지 않아서 많이 아쉽습니다.

일반적인 상황에서 방금 WeChat 번호를 신청한 경우 편집 메뉴를 사용하여 테스트하고 지침에 따라 일부 메뉴를 편집할 수 있습니다. WeChat에서는 24시간 이내에 업데이트된다고 하지만 일반적으로 매우 빠르게 업데이트되며, 가장 빠른 경우에는 1~2분 이내에 업데이트되므로 기분이 좋습니다.

개발자 모드를 사용하려면 WeChat 요구 사항에 따라 서버에 페이지 링크를 배치해야 합니다. C#을 사용하여 개발하는 경우 ***.ashx의 명명 방법을 사용하고 일반 처리를 사용하면 됩니다. Asp.NET 프로그램이면 됩니다. 일반 페이지를 사용할 필요가 없습니다.

개발 모드 메뉴를 사용하세요. 즉, WeChat API를 호출하여 메뉴를 생성할 수 있습니다. WeChat API(WeChat에는 호출할 API가 많습니다)를 호출하려면 여러 매개변수의 중요성을 알아야 합니다. 따라서 개발 모드가 켜지면 아래와 같이 이러한 매개변수가 나열됩니다.

C# WeChat 포털 및 애플리케이션 개발(1) - WeChat 인터페이스 사용 시작

3. 위챗 접속을 위한 링크 처리

위에서 언급한 것처럼 메뉴나 기타 API 호출을 하기 위해 개발 모드를 신청하는 경우, WeChat 접속 테스트는 귀하가 입력한 링크가 존재하는지, 그리고 WeChat의 콜백 테스트를 성공적으로 통과할 수 있는지 확인하는 것입니다. 위챗에서는 PHP 페이지 처리에 대한 예시를 C#으로 개발하면 검색이 가능하고, 제가 처리하는 방법은 다음과 같습니다.

일반 처리 프로그램을 만든 후 처리 페이지에 처리 로직을 추가합니다. POST가 아닌 콘텐츠인 경우 WeChat에서 수행하는 Get 테스트를 의미하며 일부 처리 로직을 추가하여 제공해야 합니다. POST 모드인 경우 나중에 소개할 인터페이스 메시지에 대한 WeChat 서버의 요청 작업입니다.

    /// <summary>
    /// 微信接口。统一接收并处理信息的入口。    /// </summary>
    public class wxapi : IHttpHandler
    {        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(); //微信接入的测试            }
        }

일반적으로 Auth 기능에서는 관련 매개변수를 획득한 후 처리하여 WeChat 서버로 반환합니다.

            string token = "****";//你申请的时候填写的Token

            string echoString = HttpContext.Current.Request.QueryString["echoStr"];            string signature = HttpContext.Current.Request.QueryString["signature"];            string timestamp = HttpContext.Current.Request.QueryString["timestamp"];            string nonce = HttpContext.Current.Request.QueryString["nonce"];

완전한 Author 함수 코드는 다음과 같으며, 비즈니스 로직 관리를 용이하게 하기 위해 비즈니스 로직을 새로운 클래스로 추가 추출했습니다.

        /// <summary>
        /// 成为开发者的第一步,验证并相应服务器的数据        /// </summary>
        private void Auth()
        {            string token = ConfigurationManager.AppSettings["WeixinToken"];//从配置文件获取Token
            if (string.IsNullOrEmpty(token))
            {
                LogTextHelper.Error(string.Format("WeixinToken 配置项没有配置!"));
            }            string echoString = HttpContext.Current.Request.QueryString["echoStr"];            string signature = HttpContext.Current.Request.QueryString["signature"];            string timestamp = HttpContext.Current.Request.QueryString["timestamp"];            string nonce = HttpContext.Current.Request.QueryString["nonce"];            if (new BasicApi().CheckSignature(token, signature, timestamp, nonce))
            {                if (!string.IsNullOrEmpty(echoString))
                {
                    HttpContext.Current.Response.Write(echoString);
                    HttpContext.Current.Response.End();
                }
            }
        }

WeChat 매개변수 CheckSignature에 서명하고 반환하는 코드는 다음과 같습니다.

아아앙

4. 개발 모드를 사용하여 메뉴 생성

WeChat 인증을 성공적으로 통과하면 개발 모드에서 API를 호출하여 원하는 대로 메뉴를 생성할 수 있습니다.

메뉴를 생성하려면 다음 위치를 통해 API 처리 인터페이스에 들어갈 수 있습니다.

C# WeChat 포털 및 애플리케이션 개발(1) - WeChat 인터페이스 사용 시작

들어가시면 WeChat이 여러 메시지 처리를 여러 카테고리로 나누어 놓은 것을 확인하실 수 있습니다.

C# WeChat 포털 및 애플리케이션 개발(1) - WeChat 인터페이스 사용 시작

사실 처음에 해야 할 일은 코드를 이용하여 메뉴를 생성하는 방법과 메뉴의 API 디버깅 인터페이스에 들어가는 방법을 알아보는 것입니다.

C# WeChat 포털 및 애플리케이션 개발(1) - WeChat 인터페이스 사용 시작

Access_Token도 입력해야 합니다. 이는 세션 인증이므로 생성 방법을 알아보려면 인터페이스로 이동해야 합니다. 아래 그림에서 두 개의 빨간색 부분은 WeChat이 시작했을 때 표시한 "개발자 자격 증명"의 두 가지 주요 매개 변수입니다.

C# WeChat 포털 및 애플리케이션 개발(1) - WeChat 인터페이스 사용 시작

이후 획득한 Access_Token을 기반으로 메뉴를 생성할 수 있으며, 메뉴의 정의에 따라 여러 카테고리로 나눌 수 있습니다. URL 방식(보기), 이벤트 모드(클릭)로 전환됩니다.

클릭: 사용자가 클릭 유형 버튼을 클릭하면 WeChat 서버가 메시지 인터페이스를 통해 메시지 유형 이벤트 구조를 개발자에게 푸시합니다(메시지 인터페이스 가이드 참조). 개발용 버튼으로 가져오기 사용자가 입력한 키 값, 개발자는 맞춤형 키 값
view를 통해 사용자와 상호 작용할 수 있습니다. WeChat 클라이언트가 열리고 개발자가 버튼을 채울 수 있습니다. url 값(즉, 웹 페이지 링크)은 웹 페이지를 여는 목적을 달성할 수 있습니다. 사용자의 기본 권한을 얻기 위해 이를 웹 페이지 권한과 결합하는 것이 좋습니다. 사용자의 로그인 개인정보를 얻기 위한 정보 인터페이스.

4. 제가 만든 메뉴 케이스

에세이 시작 부분에 QR 코드를 게시하여 스캔하신 후 서비스 계정을 팔로우하세요. 을 클릭하시면 제가 만든 메뉴를 보실 수 있습니다. 기본 메뉴에는 일반적으로 최대 3개의 열이 있습니다. 각 기본 메뉴에는 하위 메뉴도 포함될 수 있으며 해당 텍스트는 제한되어 있습니다.

우리 회사 위챗 포털 메뉴를 살펴볼까요, 멋지지 않나요?

C# WeChat 포털 및 애플리케이션 개발(1) - WeChat 인터페이스 사용 시작

WeChat 포털 및 애플리케이션의 추가 C# 개발(1)--WeChat 인터페이스 사용 시작에 대한 관련 기사를 보려면 PHP에 주의하세요. 중국사이트!

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