찾다
위챗 애플릿위챗 개발WeChat 개발 준비 단계의 그래픽 코드 소개

WeChat 개발 준비 단계


필요한 리소스:

1. WeChat 공개 플랫폼 계정

2. Baidu BAE 플랫폼 계정

1. 위챗 공개계정 신청

WeChat 공개 플랫폼에 로그인하고 오른쪽 상단에서 등록하세요.

WeChat 개발 준비 단계의 그래픽 코드 소개

여기서 등록하려면 관련 정보를 입력하세요. 개인 가입 계정이 있는 경우 회사 정보가 있는 경우 서비스 계정을 등록할 수 있습니다. 또한, 개인 구독 계정의 제한된 인터페이스로 인해 개인 개발에 그다지 유익하지 않습니다. WeChat은 개발자가 특별히 사용하는 테스트 계정도 제공합니다. 테스트 계정을 신청하려면 다음 주소를 입력하세요. WeChat 개발 준비 단계의 그래픽 코드 소개



테스트 계정 권한은 아직 개발에 매우 ​​좋습니다~

WeChat은 개발자에게 액세스하므로 모드에서는 URL 주소를 제공해야 합니다. WeChat 서버가 요청을 보낼 수 있도록 서버가 공용 네트워크에 액세스할 수 있어야 합니다. 여기서는 커뮤니티 광대역을 사용하고 있어 해결할 수 없기 때문에 대신 Baidu를 사용합니다. Bae, 공인 IP가 없으면 시도해 볼 수 있습니다. Baidu 계정으로 로그인하면 svn 및 기타를 사용해야합니다. 관리용 애플리케이션은 지원하지 않으나, 중국어 계정은 지원하지 않으므로, 바이두 계정이 중국어인 경우에는 영문 계정으로 다시 등록하셔야 합니다. WeChat 개발 준비 단계의 그래픽 코드 소개WeChat 개발 준비 단계의 그래픽 코드 소개준비가 완료된 후 개발자가 되려면 코드 작성을 시작하세요. 다음 코드는 Liu Feng 선생님의 블로그에서 가져온 것입니다

핵심 수업:

package com.vlive.action.connector;  
import java.io.IOException;  
import java.io.PrintWriter;  
import javax.servlet.ServletException;  
import javax.servlet.http.HttpServlet;  
import javax.servlet.http.HttpServletRequest;  
import javax.servlet.http.HttpServletResponse;  
import com.vlive.utils.SignUtil;  
public class URlresponse extends HttpServlet{  
    @Override  
    protected void doGet(HttpServletRequest req, HttpServletResponse resp)  
            throws ServletException, IOException {  
         // 微信加密签名    
        String signature = req.getParameter("signature");    
        // 时间戳    
        String timestamp = req.getParameter("timestamp");    
        // 随机数    
        String nonce = req.getParameter("nonce");    
        // 随机字符串    
        String echostr = req.getParameter("echostr");    
        PrintWriter out = resp.getWriter();    
        // 通过检验signature对请求进行校验,若校验成功则原样返回echostr,表示接入成功,否则接入失败    
        if (SignUtil.checkSignature(signature, timestamp, nonce)) {    
            out.print(echostr);    
        }    
        out.close();    
        out = null;    
    }  
}


    이 클래스는 SignUtil checkSignature 메소드를 사용합니다:
  • package com.vlive.utils;  
    import java.security.MessageDigest;  
    import java.security.NoSuchAlgorithmException;  
    import java.util.Arrays;  
    public class SignUtil {  
        private static String token="vlive";  
        public static boolean checkSignature(String signature, String timestamp, String nonce) {    
            String[] arr = new String[] { token, timestamp, nonce };    
            // 将token、timestamp、nonce三个参数进行字典序排序    
            Arrays.sort(arr);    
            StringBuilder content = new StringBuilder();    
            for (int i = 0; i < arr.length; i++) {    
                content.append(arr[i]);    
            }    
            MessageDigest md = null;    
            String tmpStr = null;    
            try {    
                md = MessageDigest.getInstance("SHA-1");    
                // 将三个参数字符串拼接成一个字符串进行sha1加密    
                byte[] digest = md.digest(content.toString().getBytes());    
                tmpStr = byteToStr(digest);    
            } catch (NoSuchAlgorithmException e) {    
                e.printStackTrace();    
            }    
            content = null;    
            // 将sha1加密后的字符串可与signature对比,标识该请求来源于微信    
            return tmpStr != null ? tmpStr.equals(signature.toUpperCase()) : false;    
        }    
         /**  
         * 将字节数组转换为十六进制字符串  
         *   
         * @param byteArray  
         * @return  
         */    
        private static String byteToStr(byte[] byteArray) {    
            String strDigest = "";    
            for (int i = 0; i < byteArray.length; i++) {    
                strDigest += byteToHexStr(byteArray[i]);    
            }    
            return strDigest;    
        }    
        /**  
         * 将字节转换为十六进制字符串  
         *   
         * @param mByte  
         * @return  
         */    
        private static String byteToHexStr(byte mByte) {    
            char[] Digit = { &#39;0&#39;, &#39;1&#39;, &#39;2&#39;, &#39;3&#39;, &#39;4&#39;, &#39;5&#39;, &#39;6&#39;, &#39;7&#39;, &#39;8&#39;, &#39;9&#39;, &#39;A&#39;, &#39;B&#39;, &#39;C&#39;, &#39;D&#39;, &#39;E&#39;, &#39;F&#39; };    
            char[] tempArr = new char[2];    
            tempArr[0] = Digit[(mByte >>> 4) & 0X0F];    
            tempArr[1] = Digit[mByte & 0X0F];    
            String s = new String(tempArr);    
            return s;    
        }    
    }

    다음은 web.xml

    <?xml version="1.0" encoding="UTF-8"?>  
    <web-app version="2.5"   
        xmlns="http://java.sun.com/xml/ns/javaee"   
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"   
        xsi:schemaLocation="http://java.sun.com/xml/ns/javaee   
        http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">  
      <display-name></display-name>   
      <servlet>    
            <servlet-name>URlresponse</servlet-name>    
            <servlet-class>    
               com.vlive.action.connector.URlresponse    
            </servlet-class>    
        </servlet>    
        <!-- url-pattern中配置的/coreServlet用于指定该Servlet的访问路径 -->    
        <servlet-mapping>    
            <servlet-name>URlresponse</servlet-name>    
            <url-pattern>/urlresponse</url-pattern>    
        </servlet-mapping>    
      <welcome-file-list>  
        <welcome-file>index.jsp</welcome-file>  
      </welcome-file-list>  
    </web-app>

입니다.


이제 액세스 구성을 시작할 수 있습니다
  • 해당 URL과 토큰을 입력하면 개발자가 될 수 있습니다. ~


위 내용은 WeChat 개발 준비 단계의 그래픽 코드 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
PHP微信开发:如何实现消息加密解密PHP微信开发:如何实现消息加密解密May 13, 2023 am 11:40 AM

PHP是一种开源的脚本语言,广泛应用于Web开发和服务器端编程,尤其在微信开发中得到了广泛的应用。如今,越来越多的企业和开发者开始使用PHP进行微信开发,因为它成为了一款真正的易学易用的开发语言。在微信开发中,消息的加密和解密是一个非常重要的问题,因为它们涉及到数据的安全性。对于没有加密和解密方式的消息,黑客可以轻松获取到其中的数据,对用户造成威胁

PHP微信开发:如何实现客服聊天窗口管理PHP微信开发:如何实现客服聊天窗口管理May 13, 2023 pm 05:51 PM

微信是目前全球用户规模最大的社交平台之一,随着移动互联网的普及,越来越多的企业开始意识到微信营销的重要性。在进行微信营销时,客服服务是至关重要的一环。为了更好地管理客服聊天窗口,我们可以借助PHP语言进行微信开发。一、PHP微信开发简介PHP是一种开源的服务器端脚本语言,广泛运用于Web开发领域。结合微信公众平台提供的开发接口,我们可以使用PHP语言进行微信

PHP微信开发:如何实现用户标签管理PHP微信开发:如何实现用户标签管理May 13, 2023 pm 04:31 PM

在微信公众号开发中,用户标签管理是一个非常重要的功能,可以让开发者更好地了解和管理自己的用户。本篇文章将介绍如何使用PHP实现微信用户标签管理功能。一、获取微信用户openid在使用微信用户标签管理功能之前,我们首先需要获取用户的openid。在微信公众号开发中,通过用户授权的方式获取openid是比较常见的做法。在用户授权完成后,我们可以通过以下代码获取用

用PHP开发微信群发工具用PHP开发微信群发工具May 13, 2023 pm 05:00 PM

随着微信的普及,越来越多的企业开始将其作为营销工具。而微信群发功能,则是企业进行微信营销的重要手段之一。但是,如果只依靠手动发送,对于营销人员来说是一件极为费时费力的工作。所以,开发一款微信群发工具就显得尤为重要。本文将介绍如何使用PHP开发微信群发工具。一、准备工作开发微信群发工具,我们需要掌握以下几个技术点:PHP基础知识微信公众平台开发开发工具:Sub

如何使用PHP进行微信开发?如何使用PHP进行微信开发?May 21, 2023 am 08:37 AM

随着互联网和移动智能设备的发展,微信成为了社交和营销领域不可或缺的一部分。在这个越来越数字化的时代,如何使用PHP进行微信开发已经成为了很多开发者的关注点。本文主要介绍如何使用PHP进行微信开发的相关知识点,以及其中的一些技巧和注意事项。一、开发环境准备在进行微信开发之前,首先需要准备好相应的开发环境。具体来说,需要安装PHP的运行环境,以及微信公众平台提

PHP微信开发:如何实现群发消息发送记录PHP微信开发:如何实现群发消息发送记录May 13, 2023 pm 04:31 PM

随着微信成为了人们生活中越来越重要的一个通讯工具,其敏捷的消息传递功能迅速受到广大企业和个人的青睐。对于企业而言,将微信发展为一个营销平台已经成为趋势,而微信开发的重要性也逐渐凸显。在其中,群发功能更是被广泛使用,那么,作为PHP程序员,如何实现群发消息发送记录呢?下面将为大家简单介绍一下。1.了解微信公众号相关开发知识在了解如何实现群发消息发送记录之前,我

ThinkPHP6微信开发指南:快速搭建微信公众号应用ThinkPHP6微信开发指南:快速搭建微信公众号应用Aug 26, 2023 pm 11:55 PM

ThinkPHP6微信开发指南:快速搭建微信公众号应用引言:微信公众号作为一种重要的社交媒体平台,为个人和企业在市场推广、信息传播等方面提供了很大的机会。在这篇文章中,我们将介绍如何使用ThinkPHP6快速搭建一个微信公众号应用,并且提供一些常用的代码示例。环境准备在开始开发之前,我们首先需要准备好以下环境:PHP7以上版本ThinkPHP6框架微信公众号

PHP微信开发:如何实现语音识别PHP微信开发:如何实现语音识别May 13, 2023 pm 09:31 PM

随着移动互联网的普及,微信作为一款社交软件,越来越多的人开始使用,并且微信开放平台也给开发者带来了众多的机会。近年来,随着人工智能技术的发展,语音识别技术逐渐成为了移动端开发的热门技术之一。在微信开发中,如何实现语音识别成为很多开发者关注的问题。本文将介绍如何利用PHP开发微信应用实现语音识别功能。一、语音识别原理在介绍如何实现语音识别之前,我们先了解一下语

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

에디트플러스 중국어 크랙 버전

에디트플러스 중국어 크랙 버전

작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

SublimeText3 영어 버전

SublimeText3 영어 버전

권장 사항: Win 버전, 코드 프롬프트 지원!

ZendStudio 13.5.1 맥

ZendStudio 13.5.1 맥

강력한 PHP 통합 개발 환경