精华内容
下载资源
问答
  • 微信公众平台开发入门

    万人学习 2015-01-06 11:21:27
    通过本课程的学习,学员能够入门微信公众平台开发,能够胜任企业级的订阅号、服务号、企业号的应用开发工作。 通过本课程的学习,学员能够对微信公众平台有一个清晰的、系统性的认识。例如,公众号是什么,它有什么...
  • 本例中列出了微信公众平台开发的所有流程的代码,包括接收xml数据、解析xml数据、调用图灵机器人api接口获取智能回复内容、封装结果xml数据等,简单明了,不明之处可查看个人博客中的讲解。
  • 一、微信公众平台、微信公众平台.小程序、微信.开放平台登录地址 项目 微信公众平台 微信公众平台.小程序 微信。开放平台 登录地址 https://mp.weixin.qq.com https://mp.weixin.qq.com ...

    以下内容,仅限于根据自己开发以及阅读微信文档总结,错误之处敬请指出,共同进步!

    一、微信公众平台、微信公众平台.小程序、微信.开放平台登录地址

    项目 微信公众平台 微信公众平台.小程序 微信。开放平台
    登录地址 https://mp.weixin.qq.com https://mp.weixin.qq.com https://open.weixin.qq.com
    登录账号 sensor@**** 1960314645**** 2851513591****
    简称 公众号平台 小程序平台 开放平台
    微信认证 每年年审,费用 300元/年 无认证费用 需要一次性认证,认证费300元

    这三个平台必须使用不同的账号申请,因为账号是邮箱地址,所以,必须使用3个不同的邮箱地址作为账号,如果某个邮箱地址已经是微信公众平台的账号,则这个邮箱地址就不能用于另外的两个平台。
    事实上,微信公众平台为了和微信公众平台.小程序区分开来,也可以称作微信公众平台.公众号。以下简称:公众号平台、小程序平台、开放平台

    二、登录成功后界面

    1. 公众号平台 (微信公众平台.公众号)
      在这里插入图片描述
    2. 小程序平台 (微信公众平台.小程序)
      在这里插入图片描述
    3. 开放平台(微信.开放平台)
      在这里插入图片描述

    三、三者之间的关系

    如果需要搞清楚三者之间的关系,就涉及到unionid。关于unionid,在【微信官方文档.公众号】是这样描述的:开发者可通过OpenID来获取用户基本信息。特别需要注意的是,如果开发者拥有多个移动应用、网站应用和公众帐号,可通过获取用户基本信息中的unionid来区分用户的唯一性,因为只要是同一个微信开放平台帐号下的移动应用、网站应用和公众帐号,用户的unionid是唯一的。换句话说,同一用户,对同一个微信开放平台下的不同应用,unionid是相同的
    开放文档
    综上结合自己的理解:
    1、公众号平台负责管理公众号;
    2、小程序平台负责管理小程序;
    3、每个平台对于某个用户都会产生一个OpenID,在单独的平台上这个OpenID是唯一的,但是如果某个用户既要使用公众号,又有小程序,那么在公众号和小程序平台上OpenID是分别不一样的。
    4、此时就需要开放平台,凡是在开放平台登记的应用,对于这个开放平台都将使用一个统一的unionID。这样就可以在不同的平台上唯一确定某个用户了。

    这么理解,公众号平台和小程序平台是相互独立的平台,可以各自开发各自的应用,如果是一个独立的应用,那么只需要使用OpenID就可以区别用户,例如如果只是使用公众号,不使用小程序,那么直接使用公众号的OpenID就可以了,繁殖对于小程序来说也是一样的。同一个用户在公众号平台和在小程序平台上的OpenID是不一样的,但是实际应用是经常会需要公众号和小程序同时使用,这样就需要使用开放平台来统一OpenID,最终出现了unionid。这个是唯一的,不变的!

    四、小程序开发中关于使用Session_Key可以解开得到unionid问题

    按照官方文档的说明,前端是可以通过 wx.login 获取到 code 登录凭证,然后在后台通过 auth.code2Session 换取openid,session_key,unionid,需要说明的是,unionid是用户在开放平台的唯一标识符,在满足 UnionID 下发条件的情况下会返回。那么满足什么样的条件会直接返回unionid呢?答案是注册认证微信开放平台,注意一定要认证,也就是说要交300元通过认证,这样后台就会直接返回unionid。否则,按照官方说的如果没有返回unionid,也可以通过session_key在后台进行解密,解密需要的相关参数需要前端通过wx.getUserInfo调用获取到userInfo,rawData,signature,encryptedData,iv,cloudID参数。后台通过加密算法解密,最终可以得到unionid。 我测试的时候,如果没有通过开放平台认证,密文数据中始终没有返回unionid,不知道不认证的情况下满足什么样的条件才会返回。

    展开全文
  • 微信公众平台开发微信公众平台开发微信公众平台开发微信公众平台开发微信公众平台开发
  • 微信公众平台

    2014-06-19 15:16:55
    微信公众平台入门到精通》Vol.1 2 《微信公众平台入门到精通》Vol.2 10 《微信公众平台入门到精通》Vol.3 19 《微信公众平台入门到精通》Vol.4 32 《微信公众平台入门到精通》Vol.5 40 《微信公众平台入门到精通》...
  • 微信公众-提示分享到朋友圈样式demo-微信公众平台-微网站-微APP
  • 微信公众平台深度开发Java版 v2.0”系列课程共有6季,使用JAVA语言,系统讲解微信公众平台订阅号、服务号官方列出的全部功能接口,包括:自定义菜单、个性化菜单(按需定制菜单)、群发消息、客服消息(有限次消息...
  • 微信公众平台开发 微信公众平台开发...微信公众平台开发 微信公众平台开发模式 企业微信公众平台 微信一键关注 方倍工作室  以下功能全部被屏蔽,用不了了。老老实实的用二维码吧。其他折腾都是白费力气    一

    微信公众平台开发 微信公众平台开发模式 企业微信公众平台 微信一键关注  
    整理:方倍工作室 
    原文: http://www.cnblogs.com/txw1958/p/weixin41-follow-method.html

    微信公众平台开发 微信公众平台开发模式 企业微信公众平台 微信一键关注 方倍工作室 

    以下功能全部被屏蔽,用不了了。老老实实的用二维码吧。其他折腾都是白费力气 

     

    一、使用HTTP协议

    特别推荐 <a href="http://weixin.qq.com/r/dnXk68HE5P_bh9CInyBS">豆立方</a>,点击关注。

     

    二、使用weixin协议

    <a href="weixin://profile/gh_b629c48b653e">点击关注方倍工作室</a>

    或者

    <a href="weixin://addfriend/pondbaystudio">点击关注方倍工作室</a>

     

     

    三、使用JavaScript代码

    var addWxContact = function(wxid, cb)
    {
        if (typeof WeixinJSBridge == 'undefined') return false;
            WeixinJSBridge.invoke('addContact', {
                webtype: '1',
                username: wxid
            }, function(d) {
                // 返回d.err_msg取值,d还有一个属性是err_desc
                // add_contact:cancel 用户取消
                // add_contact:fail 关注失败
                // add_contact:ok 关注成功
                // add_contact:added 已经关注
                WeixinJSBridge.log(d.err_msg);
                cb && cb(d.err_msg);
            });
    };

     

    四、部分账号专用

    https://open.weixin.qq.com/subscribe?appid=wxb629c48b653e

     

    五、订阅同时绑定,DNS专用

     解码后为

    https://login.weixin.qq.com/l/E0LsxoTaRxC_HM

     

    六、扫描二维码(推荐)

     

    七、体验

    关注方倍工作室的微信,回复9,再点击微信图标,体验一键关注

                       

     

    展开全文
  • 微信公众平台管理系统 微信公众号 微信开发 微信商城 dtcms框架,包含微网站、微商城、客户管理、用户管理、菜单管理等
  • 微信公众开放平台开发 -智能机器人java源代码工程

    千次下载 热门讨论 2013-08-13 13:50:04
    微信公众开放平台开发 -智能机器人java源代码工程 刘峰的博客说明已经很详细了, 本人旨在帮助刚入门微信公众平台开发苦于无法着手而迅速上手准备的, 有不明白的请联系我或微信号guestsun。 导入整个工程到...
  • 微信公众平台提供了一个简单的php示例代码,在做进一步开发之前,我们有必要将其详细了解一下。 二、获取代码 微信官网:http://mp.weixin.qq.com/mpres/htmledition/res/wx_sample.zip 三、分析代码 ...

    一、摘要

    微信公众平台提供了一个简单的php示例代码,在做进一步开发之前,我们有必要将其详细了解一下。

    二、获取代码

    微信官网:http://mp.weixin.qq.com/mpres/htmledition/res/wx_sample.zip

    三、分析代码

    完整代码如下:

    复制代码
    <?php
    /**
      * wechat php test
      */
    
    //define your token
    define("TOKEN", "weixin");
    $wechatObj = new wechatCallbackapiTest();
    $wechatObj->valid();
    
    class wechatCallbackapiTest
    {
        public function valid()
        {
            $echoStr = $_GET["echostr"];
    
            //valid signature , option
            if($this->checkSignature()){
                echo $echoStr;
                exit;
            }
        }
    
        public function responseMsg()
        {
            //get post data, May be due to the different environments
            $postStr = $GLOBALS["HTTP_RAW_POST_DATA"];
    
            //extract post data
            if (!empty($postStr)){
                    
                    $postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
                    $fromUsername = $postObj->FromUserName;
                    $toUsername = $postObj->ToUserName;
                    $keyword = trim($postObj->Content);
                    $time = time();
                    $textTpl = "<xml>
                                <ToUserName><![CDATA[%s]]></ToUserName>
                                <FromUserName><![CDATA[%s]]></FromUserName>
                                <CreateTime>%s</CreateTime>
                                <MsgType><![CDATA[%s]]></MsgType>
                                <Content><![CDATA[%s]]></Content>
                                <FuncFlag>0</FuncFlag>
                                </xml>";             
                    if(!empty( $keyword ))
                    {
                        $msgType = "text";
                        $contentStr = "Welcome to wechat world!";
                        $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr);
                        echo $resultStr;
                    }else{
                        echo "Input something...";
                    }
    
            }else {
                echo "";
                exit;
            }
        }
            
        private function checkSignature()
        {
            $signature = $_GET["signature"];
            $timestamp = $_GET["timestamp"];
            $nonce = $_GET["nonce"];    
                    
            $token = TOKEN;
            $tmpArr = array($token, $timestamp, $nonce);
            sort($tmpArr);
            $tmpStr = implode( $tmpArr );
            $tmpStr = sha1( $tmpStr );
            
            if( $tmpStr == $signature ){
                return true;
            }else{
                return false;
            }
        }
    }
    
    ?>
    复制代码

    3.1 整体分析

    原始示例代码大致分为四个部分:

    • 定义TOKEN
    • 声明一个类 wechatCallbackapiTest
    • 创建类wechatCallbackapiTest 的一个实例对象 $wechatObj
    • 调用类的 valid() 方法。

    3.2 详细分析

    3.2.1 定义TOKEN

    define("TOKEN", "weixin");

    define 是用来给常量赋值的函数,这句话的意思是赋予“TOKEN”这个常量值为“weixin”。

    TOKEN 是用来进行交互安全认证的,开发者可以随意定义,要和公众平台里设置的一样。

    3.2.2 声明一个类

    class wechatCallbackapiTest{

    }

    声明一个类 wechatCallbackapiTest,该类中包含有三个方法(函数)。

    a. public function valid()

    用于申请 成为开发者 时向微信发送验证信息。

    b. public function responseMsg()

    处理并回复用户发送过来的消息,也是用的最多的一个函数,几乎所有的功能都在这里实现。

    复制代码
    responseMsg 函数详解:

    $postStr = $GLOBALS["HTTP_RAW_POST_DATA"];
    接收微信公众平台发送过来的用户消息,该消息数据结构为XML,不是php默认的识别数据类型,因此这里用了$GLOBALS['HTTP_RAW_POST_DATA']来接收,同时赋值给了$postStr

    if (!empty($postStr))
    判断$postStr是否为空,如果不为空(接收到了数据),就继续执行下面的语句;如果为空,则跳转到与之相对应的else语句。

    $postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
    使用simplexml_load_string() 函数将接收到的XML消息数据载入对象$postObj中。这个严谨的写法后面还得加个判断是否载入成功的条件语句,不过不写也没事。

    $fromUsername = $postObj->FromUserName;
    将对象$postObj中的发送消息用户的OPENID赋值给$fromUsername变量

    $toUsername = $postObj->ToUserName;
    将对象$postObj中的公众账号的ID赋值给$toUsername变量

    $keyword = trim($postObj->Content);
    trim() 函数从字符串的两端删除空白字符和其他预定义字符,这里就可以得到用户输入的关键词

    $time = time();
    time() 函数返回当前时间的 Unix 时间戳,即自从 Unix 纪元(格林威治时间 1970 年 1 月 1 日 00:00:00)到当前时间的秒数。

    $textTpl = "<xml>
           <ToUserName><![CDATA[%s]]></ToUserName>
           <FromUserName><![CDATA[%s]]></FromUserName>
           <CreateTime>%s</CreateTime>
           <MsgType><![CDATA[%s]]></MsgType>
           <Content><![CDATA[%s]]></Content>
           <FuncFlag>0</FuncFlag>
           </xml>";
    存放微信输出内容的模板

    if(!empty( $keyword ))
    判断$keyword是否为空,不为空则继续执行下面的语句;如果为空,则跳转到与之相对应的else语句,即 echo "Input something...";

    $msgType = "text";
    消息类型是文本类型

    $contentStr = "Welcome to wechat world!";
    回复的消息内容

    $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr);
    使用sprintf() 函数将格式化的数据写入到变量中去;
    $fromUsername, $toUsername, $time, $msgType, $contentStr 分别顺序替换模板里“%s”位置,也即是“$resultStr”这个变量最后实际为:

    <xml>
    <ToUserName><![CDATA[$toUsername]]></ToUserName>
    <FromUserName><![CDATA[$fromUsername]]></FromUserName>
    <CreateTime>$time</CreateTime>
    <MsgType><![CDATA[$msgType]]></MsgType>
    <Content><![CDATA[$contentStr]]></Content>
    <FuncFlag>0</FuncFlag>      //位0x0001被标志时,星标刚收到的消息。
    </xml>

    echo $resultStr;     //把回复的消息输出

    复制代码

    c. private function checkSignature()

    开发者通过检验signature对请求进行校验(下面有校验方式)。若确认此次GET请求来自微信服务器,请求原样返回echostr参数内容,则接入生效,否则接入失败。

    signature结合了开发者填写的token参数和请求中的timestamp参数、nonce参数。

    加密/校验流程:
    1. 将token、timestamp、nonce三个参数进行字典序排序
    2. 将三个参数字符串拼接成一个字符串进行sha1加密
    3. 开发者获得加密后的字符串可与signature对比,标识该请求来源于微信

    3.2.3 创建实例对象

    $wechatObj = new wechatCallbackapiTest();

    3.2.4 调用类方法验证

    $wechatObj->valid();

    调用类的valid()方法执行接口验证,接口设置成功后将其注释掉。

    四、总结

    以上是对微信官方示例代码的一个分析,有解释不对的地方,还请高手指出。另外,该代码只是官方给出的简单示例代码,如果要做复杂的开发,还是要求开发者按照严谨的开发模式改写该段代码,会在后续教程中娓娓道来。

    五、参考

    微信官方公众平台API文档:http://mp.weixin.qq.com/wiki/index.php

    六、关注

    请关注 卓锦苏州 微信公众帐号,卓锦苏州 基于BAE 平台开发,针对于主流的微信功能进行开发测试。

    您可以关注 卓锦苏州 公众帐号进行功能测试,以及获取新的应用开发。

    1. 登录微信客户端,通讯录 -> 添加朋友 -> 查找公众号 -> zhuojinsz,查找并关注。

    2. 扫描二维码:

    卓锦苏州 功能列表。

     


    David Camp

    我们永远相信,分享是一种美德 | We Believe, Great People Share Knowledge...

    展开全文
  • 微信公众平台开发

    热门讨论 2014-05-14 10:53:28
    微信公众平台开发最佳实践 第1章简要介绍了微信及其两大平台:微信公众平台与微信开放平台,重点介绍了微信公众平台后台的各项功能。 第2章介绍了申请服务器资源的方法,包括申请新浪云及购买虚拟空间两种方式。...
  • 前一篇文章里我们已经把微信公众平台接口中消息及相关操作都进行了封装,本章节将主要介绍如何接收微信服务器发送的消息并做出响应。 明确在哪接收消息 从微信公众平台接口消息指南中可以了解到,当用户向公众...

    前一篇文章里我们已经把微信公众平台接口中消息及相关操作都进行了封装,本章节将主要介绍如何接收微信服务器发送的消息并做出响应。


    明确在哪接收消息

    从微信公众平台接口消息指南中可以了解到,当用户向公众帐号发消息时,微信服务器会将消息通过POST方式提交给我们在接口配置信息中填写的URL,而我们就需要在URL所指向的请求处理类CoreServlet的doPost方法中接收消息、处理消息和响应消息。


    接收、处理、响应消息

    下面先来看我已经写好的CoreServlet的完整代码:

    package org.liufeng.course.servlet;
    
    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 org.liufeng.course.service.CoreService;
    import org.liufeng.course.util.SignUtil;
    
    /**
     * 核心请求处理类
     * 
     * @author liufeng
     * @date 2013-05-18
     */
    public class CoreServlet extends HttpServlet {
    	private static final long serialVersionUID = 4440739483644821986L;
    
    	/**
    	 * 确认请求来自微信服务器
    	 */
    	public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    		// 微信加密签名
    		String signature = request.getParameter("signature");
    		// 时间戳
    		String timestamp = request.getParameter("timestamp");
    		// 随机数
    		String nonce = request.getParameter("nonce");
    		// 随机字符串
    		String echostr = request.getParameter("echostr");
    
    		PrintWriter out = response.getWriter();
    		// 通过检验signature对请求进行校验,若校验成功则原样返回echostr,表示接入成功,否则接入失败
    		if (SignUtil.checkSignature(signature, timestamp, nonce)) {
    			out.print(echostr);
    		}
    		out.close();
    		out = null;
    	}
    
    	/**
    	 * 处理微信服务器发来的消息
    	 */
    	public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    		// 将请求、响应的编码均设置为UTF-8(防止中文乱码)
    		request.setCharacterEncoding("UTF-8");
    		response.setCharacterEncoding("UTF-8");
    
    		// 调用核心业务类接收消息、处理消息
    		String respMessage = CoreService.processRequest(request);
    		
    		// 响应消息
    		PrintWriter out = response.getWriter();
    		out.print(respMessage);
    		out.close();
    	}
    
    }
    
    代码说明:

    1)第51行代码:微信服务器POST消息时用的是UTF-8编码,在接收时也要用同样的编码,否则中文会乱码;

    2)第52行代码:在响应消息(回复消息给用户)时,也将编码方式设置为UTF-8,原理同上;

    3)第54行代码:调用CoreService类的processRequest方法接收、处理消息,并得到处理结果;

    4)第57~59行:调用response.getWriter().write()方法将消息的处理结果返回给用户

    从doPost方法的实现可以看到,它是通过调用CoreService类的processRequest方法接收、处理消息的,这样做的目的是为了解耦,即业务相关的操作都不在Servlet里处理,而是完全交由业务核心类CoreService去做。下面来看CoreService类的代码实现:

    package org.liufeng.course.service;
    
    import java.util.Date;
    import java.util.Map;
    import javax.servlet.http.HttpServletRequest;
    import org.liufeng.course.message.resp.TextMessage;
    import org.liufeng.course.util.MessageUtil;
    
    /**
     * 核心服务类
     * 
     * @author liufeng
     * @date 2013-05-20
     */
    public class CoreService {
    	/**
    	 * 处理微信发来的请求
    	 * 
    	 * @param request
    	 * @return
    	 */
    	public static String processRequest(HttpServletRequest request) {
    		String respMessage = null;
    		try {
    			// 默认返回的文本消息内容
    			String respContent = "请求处理异常,请稍候尝试!";
    
    			// xml请求解析
    			Map<String, String> requestMap = MessageUtil.parseXml(request);
    
    			// 发送方帐号(open_id)
    			String fromUserName = requestMap.get("FromUserName");
    			// 公众帐号
    			String toUserName = requestMap.get("ToUserName");
    			// 消息类型
    			String msgType = requestMap.get("MsgType");
    
    			// 回复文本消息
    			TextMessage textMessage = new TextMessage();
    			textMessage.setToUserName(fromUserName);
    			textMessage.setFromUserName(toUserName);
    			textMessage.setCreateTime(new Date().getTime());
    			textMessage.setMsgType(MessageUtil.RESP_MESSAGE_TYPE_TEXT);
    			textMessage.setFuncFlag(0);
    
    			// 文本消息
    			if (msgType.equals(MessageUtil.REQ_MESSAGE_TYPE_TEXT)) {
    				respContent = "您发送的是文本消息!";
    			}
    			// 图片消息
    			else if (msgType.equals(MessageUtil.REQ_MESSAGE_TYPE_IMAGE)) {
    				respContent = "您发送的是图片消息!";
    			}
    			// 地理位置消息
    			else if (msgType.equals(MessageUtil.REQ_MESSAGE_TYPE_LOCATION)) {
    				respContent = "您发送的是地理位置消息!";
    			}
    			// 链接消息
    			else if (msgType.equals(MessageUtil.REQ_MESSAGE_TYPE_LINK)) {
    				respContent = "您发送的是链接消息!";
    			}
    			// 音频消息
    			else if (msgType.equals(MessageUtil.REQ_MESSAGE_TYPE_VOICE)) {
    				respContent = "您发送的是音频消息!";
    			}
    			// 事件推送
    			else if (msgType.equals(MessageUtil.REQ_MESSAGE_TYPE_EVENT)) {
    				// 事件类型
    				String eventType = requestMap.get("Event");
    				// 订阅
    				if (eventType.equals(MessageUtil.EVENT_TYPE_SUBSCRIBE)) {
    					respContent = "谢谢您的关注!";
    				}
    				// 取消订阅
    				else if (eventType.equals(MessageUtil.EVENT_TYPE_UNSUBSCRIBE)) {
    					// TODO 取消订阅后用户再收不到公众号发送的消息,因此不需要回复消息
    				}
    				// 自定义菜单点击事件
    				else if (eventType.equals(MessageUtil.EVENT_TYPE_CLICK)) {
    					// TODO 自定义菜单权没有开放,暂不处理该类消息
    				}
    			}
    
    			textMessage.setContent(respContent);
    			respMessage = MessageUtil.textMessageToXml(textMessage);
    		} catch (Exception e) {
    			e.printStackTrace();
    		}
    
    		return respMessage;
    	}
    }
    

    代码说明:

    1)第29行:调用消息工具类MessageUtil解析微信发来的xml格式的消息,解析的结果放在HashMap里;

    2)32~36行:从HashMap中取出消息中的字段;

    3)39-44、84行:组装要返回的文本消息对象;

    4)47~82行:演示了如何接收微信发送的各类型的消息,根据MsgType判断属于哪种类型的消息;

    5)85行:调用消息工具类MessageUtil将要返回的文本消息对象TextMessage转化成xml格式的字符串;


    关于事件推送(关注、取消关注、菜单点击)

    对于消息类型的判断,像文本消息、图片消息、地理位置消息、链接消息和语音消息都比较好理解,有很多刚接触的朋友搞不懂事件推送消息有什么用,或者不清楚该如何判断用户关注的消息。那我们就专门来看下事件推送,下图是官方消息接口文档中关于事件推送的说明:

    这里我们只要关心两个参数:MsgType和Event。当MsgType=event时,就表示这是一条事件推送消息;而Event表示事件类型,包括订阅、取消订阅和自定义菜单点击事件。也就是说,无论用户是关注了公众帐号、取消对公众帐号的关注,还是在使用公众帐号的菜单,微信服务器都会发送一条MsgType=event的消息给我们,而至于具体这条消息表示关注、取消关注,还是菜单的点击事件,就需要通过Event的值来判断了。(注意区分Event和event)


    连载五篇教程总结

    经过5篇的讲解,已经把开发模式启用,接口配置,消息相关工具类的封装,消息的接收与响应全部讲解完了,而且贴上了完整的源代码,相信有一定Java基础的朋友可以看的明白,能够通过系列文章基本掌握微信公众平台开发的相关技术知识。下面我把目前项目的完整结构贴出,方便大家对照:



    如果觉得文章对你有所帮助,请留言支持或关注微信公众帐号xiaoqrobot支持柳峰哦!


    展开全文
  • 一、微信公众平台介绍 微信公众平台是腾讯公司在微信的基础上新增的功能模块,通过这一平台,个人和企业都可以打造一个微信的公众号,可以群发文字、图片、语音、视频、图文消息五个类别的内容。 
  • 微信公众平台测试工具

    千次下载 热门讨论 2015-04-09 15:58:41
    方便微信公众平台开发者在本地调试自己的微信公众平台应用。软件采用Java开发,需要Java运行环境。软件开源,https://github.com/subirun/WechatTestTool
  • 前面几篇文章一直都在说微信公众平台的开发准备工作,那么从这篇开始我们就将正式的进入JAVA微信公众平台开发的整个流程,那么这篇我们开始聊聊如何将我们的服务端和微信公众平台对接! (一)接入流程解析 ...
  •  三、接入微信公众平台  四、发送一条微信信息并得到回复    效果如下:      马上来搭建我们的微信公众号吧O(∩_∩)O哈! 一.申请微信公众账号 ①.如果你还没有自己的微信公众号,赶紧去注册一个 ...
  • 扫描二维码,加微信公众账号 youand
  • 微信公众平台C#版SDK

    千次下载 热门讨论 2014-02-09 01:02:41
    详细介绍:微信公众平台C#版SDK,封装了微信公众平台的所有消息推送以及接受API的调用方法,方便公众平台.NET开发者轻松进行微信公众平台的开发。 作者网站:微信公众账号导航 http://www.qq8384.com 详细帮助:...
  • java开发微信公众平台

    2015-04-24 12:02:07
    微信公众帐号开发教程第1 篇-引言 微信公众帐号开发教程第2 篇-微信公众帐号的类型(普通和会议) 微信公众帐号开发教程第3 篇-开发模式启用及接口配置 微信公众帐号开发教程第4 篇-消息及消息处理工具的封装 微信...
  • 微信公众平台开发之消息管理是子恒老师《微信公众平台开发》视频教程的第4部。详细讲解了用php开发微信,对微信公众平台中的消息管理开发。内容包含微信关键字回复,多图文消息回复开发,接收图片消息,视频,小视频...
  • 微信公众平台开发有关与架构设计、安全、微信UI的相关知识。提供全套的开发工具,从“初级”开始讲解,教授如何注册、使用开发账号。特别的,还有专门的课程,手把手教同学们如何搭建环境。
  • 微信公众开放平台开发03---百度BAE上搭建属于自己的微信公众平台 -JAVA,微信公众开放平台部署到百度云中BASE2.0,进行调试,木有钱买云服务器的亲们试试 技术qq交流群:JavaDream:251572072 1.在做微信公众平台开发...
  • 微信公众平台二次开发的环境有3部分:微信公众账号、百度云平台、ide开发工具 当然我们也可以自己搭建服务器来代替百度平台,只要在服务器url那里改成自己对应的服务器url就行,我们后面会说到。 微信公众账号...
  • ylbtech-微信-公众平台:微信公众平台接口调试工具 1.返回顶部 1.1、微信公众平台接口调试工具 http://mp.weixin.qq.com/debug/ 1.2、微信 JS 接口签名校验工具 ......
  • 微信公众平台消息接口c#版

    千次下载 热门讨论 2012-12-13 09:12:53
    微信只有php版,自己改写的微信公众平台消息接口c#版
  • 微信公众开放平台开发01---微信公众平台介绍,以及开发准备 技术qq交流群:JavaDream:251572072 部分内容收集于网络: 1.先分享一份源码: 微信公众开放平台开发 -智能机器人java源代码工程 接口配置信息 url:...
  • 准备工作,今天要介绍的是微信公众平台接收事件推送部分,从官方文档可以看出,微信公众平台提供了事件推送的功能,用户关注公众号 取消关注号都可以将内容推送到 开发者在微信公众平台配置的url 中,开发者可以拿着...
  • 微信公众平台是腾讯公司在微信的基础上新增的功能模块,通过这一平台,个人和企业都可以打造一个微信的公众号,并实现和特定群体的文字、图片、语音的全方位沟通、互动。 二、通讯机制 三、注册微信平台公众帐号...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 24,439
精华内容 9,775
关键字:

微信公众