微信开发平台删除应用_微信开发平台和微信公众平台 - CSDN
  • 微信开放平台-管理中心-应用删除

    千次阅读 2015-06-10 19:13:01
    很久之前 在微信开放平台创建了移动应用开发、最近需要创建新项目发现只能创建10个  废弃的应用显示为: 而正常的显示是可以修改编辑的 通过点击 获取网络请求url 就可以达到删除废弃APP的目的  ...



     很久之前 在微信开放平台创建了移动应用的开发、最近需要创建新项目发现只能创建10个


        废弃的应用显示为:



    而正常的显示是可以修改编辑的



    通过点击删除、使用火狐Friebug来获取信息  确定获取网络请求url 就可以达到删除废弃APP的目的

     https://open.weixin.qq.com/cgi-bin/appdel?token=5d64df301e8d1fbe88b4333364dd64a61b20c25611&lang=zh_CN&f=json&ajax=1&appid=wxf28c8637e75cf411&key=wxf28c8637e75cf411







    只需替换同一账号下的appid和key、在新窗口中请求即可






    展开全文
  • 微信公众平台应用开发实战

    千次阅读 2014-08-23 10:44:04
    微信公众平台应用开发实战 微信营销 ISBN 9787111438618 作者 钟志勇 含税价 59.0元 税后 51.3元 增值税 7.7元 卓越价 40.7元(满49元免运费) 有货 出版社 机械工业出版社 出版日期 2013年08月...

    微信公众平台应用开发实战

    微信公众平台应用开发实战侧面
    ISBN 9787111438618
    作者 钟志勇
    含税价 59.0元 税后 51.3元 增值税 7.7元
    卓越价 40.7(满49元免运费) 有货

    出版社 机械工业出版社
    出版日期 2013年08月28日
    版次 第1版
    印刷时间 2013年08月29日
    印次 第1次
    装帧 平装
    纸张 胶版纸
    页数 256页
    语种 简体中文
    开本 170mn×242mn 16开
    重量 440克

    微信公众平台应用开发实战评价
    ★★★★☆ 4 星 - 1 篇书评

    免费下载微信公众平台应用开发实战源码 (约 69KB)

    内容简介
    腾讯公司资深软件研发工程师兼微信公众平台应用开发先驱者撰写,权威性毋庸置疑
    全面介绍微信公众平台应用开发所需各项技术,系统解读微信公众平台开放的 API 和各项高级功能,逐步讲解微信公众平台应用开发的流程、方法和技巧
    注重实战,不仅通过3个案例呈现了娱乐型、应用型、游戏型应用的完整开发过程,还实现了一个快速开发公众平台应用的框架,可以直接使用

    作者简介
    钟志勇 腾讯资深软件研发工程师,毕业于中科院计算所,微信公众平台应用开发先驱,有多款应用开发经验。
    在腾讯(深圳)云平台部工作,担任后台开发工程师,参与过腾讯 QCLOUD 的研发。精通 PHP 和 Linux 网络编程技术,实战经验丰富。

    微信公众平台应用开发实战相册

    免费下载微信公众平台应用开发实战试读PDF(无水印版) (约 4453KB)

    目录 可试读

    前言 可试读

    第1章 搭建开发环境和相关技术介绍 1 可试读
     1.1 微信公众平台简介 1 可试读
     1.2 公众平台开发模式的数据交互方式 2 可试读
     1.3 AppServ 的安装与配置 4 可试读
     1.4 zendstudio 的安装与配置 10 可试读
     1.5 相关技术介绍 13
      1.5.1 PHP 13 可试读
      1.5.2 HTTP 24 可试读
      1.5.3 XML 27 可试读
      1.5.4 MySQL 29 可试读
      1.5.5 HTML5 32 可试读
     1.6 小结 36 可试读

    第2章 微信公众平台 API 详解 37 可试读
     2.1 网址接入 37 可试读
      2.1.1 接口配置信息 37 可试读
      2.1.2 Token 验证 38 可试读
     2.2 接收用户信息 39 可试读
      2.2.1 文本消息 39 可试读
      2.2.2 图片消息 40 可试读
      2.2.3 地理位置消息 41 可试读
      2.2.4 链接消息 42 可试读
     2.3 向用户回复消息 43 可试读
      2.3.1 回复文本消息 43 可试读
      2.3.2 回复音乐消息 45 可试读
      2.3.3 回复图文消息 47 可试读
     2.4 事件推送 48 可试读
     2.5 会话界面自定义菜单 49 可试读
      2.5.1 获取凭证的方法 49 可试读
      2.5.2 自定义菜单的创建 50 可试读
      2.5.3 自定义菜单的获取 54 可试读
      2.5.4 自定义菜单的删除 55 可试读
      2.5.5 菜单相关接口的限制 55 可试读
     2.6 小结 55 可试读

    第3章 开发你的第一个应用— echo server 56
     3.1 实现网址接入 56
     3.2 解析用户输入并组装返回 59
     3.3 错误处理 62
     3.4 封装代码 64
      3.4.1 日志封装 64
      3.4.2 一个简单的框架 69
      3.4.3 数据库访问封装 75
     3.5 小结 89

    第4章 带自定义菜单的 echo server 90
     4.1 在编辑模式中使用自定义菜单 90
     4.2 使用 CURL 发送 HTTP 请求 93
      4.2.1 使用 CURL 发送请求的基本流程 93
      4.2.2 获取 CURL 请求的输出信息 94
      4.2.3 使用 CURL 发送GET请求 95
      4.2.4 使用 CURL 发送POST请求 97
      4.2.5 使用 CURL 上传文件 97
     4.3 获取 access_token 99
     4.4 自定义菜单的操作 102
     4.5 实现带自定义菜单的 echo server 109
     4.6 小结 113

    第5章 实战案例1:娱乐性图片应用—“每日十幅图” 114
     5.1 需求和交互描述 114
     5.2 技术方案 117
      5.2.1 为什么使用问号 117
      5.2.2 为什么使用图文消息 117
      5.2.3 表设计 117
      5.2.4 批量重命名 118
     5.3 代码实现 119
      5.3.1 常量定义 119
      5.3.2 成员变量和初始化 120
      5.3.3 主业务逻辑 121
      5.3.4 总代码清单 127
     5.4 小结 131

    第6章 实战案例2:人脸识别应用—— findface 132
     6.1 需求和交互描述 132
     6.2 人脸识别基本概念 133
     6.3 人脸识别 OPENAPI 134
     6.4 数据库表设计 136
     6.5 后台逻辑设计 137
     6.6 代码实现 138
      6.6.1 配置定义部分 138
      6.6.2 Face++ 接口封装部分 139
      6.6.3 Group 的创建和训练 142
      6.6.4 findface 主逻辑 142
     6.7 把照片保存到本地 145
     6.8 小结 148

    第7章 实战案例3:趣味游戏—命运左轮 149
     7.1 游戏过程 149
     7.2 数据表设计 151
     7.3 自定菜单设计 153
     7.4 具体代码实现 155
      7.4.1 AbstractInterface.php 159
      7.4.2 WeChatCallBackMYZL.php 161
      7.4.3 Ready.php 167
      7.4.4 Start.php 169
      7.4.5 ChipIn.php 173
      7.4.6 PutMagic.php 178
      7.4.7 Shoot.php 185
      7.4.8 GetOp.php 192
      7.4.9 AddUser.php 195
      7.4.10 Matcher.php 196
     7.5 运行截图 198
     7.6 小结 198

    第8章 海量请求的应对方法 199
     8.1 影响公众账号的响应速度的因素 199
      8.1.1 网络时延 199
      8.1.2 请求处理时间 200
     8.2 使用高性能的 Web 组件 200
      8.2.1 安装 201
      8.2.2 配置和运行 201
      8.2.3 A/B 测试 205
     8.3 监控服务器的各项指标 208
      8.3.1 top 命令 208
      8.3.2 vmstat 和 sar 命令 210
      8.3.3 netstat 命令 210
      8.3.4 Nmon 监控 211
     8.4 使用缓存系统 212
      8.4.1 Redis 简介 212
      8.4.2 Redis 的使用和性能对比 213
     8.5 数据库的备份和扩展 218
      8.5.1 主从复制和读写分离 219
      8.5.2 数据库的垂直划分和水平划分 220
     8.6 接入层反向代理 224
     8.7 小结 227

    第9章 恶意请求的应对方法 228
     9.1 URL 访问限制 228
     9.2 防止 SQL 注入 232
     9.3 用户输入导致 XML 格式错误 234
     9.4 PHP 安全 237
     9.5 DDOS 简介 239
      9.5.1 SYN flood 239
      9.5.2 应用层 DDOS 241
      9.5.3 ReDOS 241
     9.6 小结 245
    微信公众平台应用开发实战正面
    微信扫一扫《微信公众平台应用开发实战》封面

    “微信公众平台应用开发实战”文摘

    前言

    为什么要写这本书
    微信有超过4亿的用户,其公众平台给了我们一个接触这个庞大用户量的机会,然而,到目前为止,公众账号的数量并不多。微信在公众平台道路上的探索还只是初级阶段,公众平台的使用者也在积极地进行着自己的摸索,目前特别成功的案例还很少。公众平台对于我们来说是一个全新的平台,任何人都可以在公众平台上注册账号,进行自己的探索,这意味着大家的机会都是平等的。和大家一样,我也是众多探索者中的一个。
    关于机会,唐骏在他的新书《重新出发》中给出了他的理解:“机会有三种,第一种是别人给的,第二种是争取的,第三种是运作出来的。迂回前进是运作机会的最佳方式之一,对于处于弱势的人来说尤其有效。”也许读者目前对公众平台一无所知,我想从现在开始了解并不晚,也许最好的公众账号就是你将来苦心经营的那个。
    我是在今年年初的时候第一次接触到公众平台的,一番了解之后,对它的开发模式非常感兴趣,于是自己开发了一些公众账号,包括本书中将会介绍的 meiri10futu、findface 和 mingyunzuolun。在开发和运营这些账号的过程中记录了遇到的问题和对应的处理方法,本书其实是把整个开发的过程展现给读者,我希望读者能够从中得一些帮助,同时也希望自己通过这本书认识更多对公众平台的开发感兴趣的人。

    读者对象
    ❑ 对公众平台感兴趣的人;
    ❑ 有程序开发经验,想尝试微信公众平台开发的人;
    ❑ 没有程序开发经验,想入门学习微信公众平台开发的人(本书的准备篇是专门为这类读者准备的);
    ❑ 想通过开发一些实际应用提升自己开发能力的人(本书使用到的知识是互联网应用通用的);
    ❑ 已经开发了自己的公众账号,想进一步提升的人。

    如何阅读本书
    本书在逻辑上分为四大部分:
    第一部分为第1章,简单介绍了微信公众账号的开发模式和相关的技术,包括 HTTP、PHP、XML 和 SQL,帮助读者了解一些基础的背景知识。如果读者已经使用过相关技术并对开发模式有所了解,可以跳过这部分。
    第二部分为第2~4章,着重讲解公众平台的开放 API,并用这些 API 实现一个入门的 echo server 账号。在这一部分,笔者还进一步实现了一套快速开发公众账号的框架,读者使用这个框架可以快速实现自己的公众账号。
    第三部分为第5~7章,依次向读者展示三个公众账号(meiri10futu、findface 和 mingyunzuolun)的开发过程,这三个公众账号分别属于娱乐型、应用型和游戏型。掌握这部分知识之后,读者可以独立完成一个有复杂逻辑的公众账号。
    第四部分为第8~9章,介绍了如何处理海量订阅和用户消息、如何防御恶意攻击。这部分意在提高读者能力,同时这部分内容也是运营互联网应用需要重点关注的。这部分给出了一些实用的方法,掌握这些内容,读者将有能力独自运营一个有相当订阅数量的公众账号。
    如果读者是公众账号开发的新手,建议至少从第二部分开始阅读,如果读者开发过一些公众账号,可以直接选择自己感兴趣的章节阅读。

    勘误和支持
    由于笔者的水平有限,加之编写时间仓促,书中难免会出现一些错误或者不准确的地方,恳请读者批评指正。为了更好地和读者交流,笔者专门创建了一个QQ群(190609684),读者可以加入该群与笔者进行交流。如果你有更多的宝贵意见,也欢迎发送邮件至邮箱 pacozhong@qq.com,期待能够得到你们的真挚反馈。
    书中的全部源文件可以从天香空城(www.weixingon.com/wechat/)下载。

    致谢
    首先要感谢腾讯公司的微信团队,是他们创造了这款伟大的软件。
    其次要感谢机械工业出版社华章公司的杨福川和孙海亮,感谢你们在我写作过程中提供的支持,因为有了你们的鼓励和帮助,我才能顺利完成全部书稿。
    谨以此书献给我亲爱的家人,以及热爱软件开发的朋友们!

    “微信公众平台应用开发实战”书评


    经验丰富和写出好书是两回事

    萧秋水 2013-10-06 10:03:16 ★★★★☆ 4 

    相比易伟的《微信公众平台搭建与开发揭秘》,这本书可能更适合于有丰富经验的开发人员来读,不过如果有了丰富开发经验,又是否需要读书,似乎又是个问题,我接触的几位做过微信开发的人,似乎都是自己摸索。

    天香空城微信二维码
    关注 天香空城 微信号 ulisse 或扫描二维码,可以了解微信营销书籍
    微信营销书评
    微信公众平台开发源码

    展开全文
  • 微信开发平台修改Android的签名的坑

    千次阅读 2017-10-07 02:57:44
    使用微信分享功能只支付的时候遇到修改Android签名后不能正常调用分享功能及支付功能,用微信官方求助(微信、qq、电话均无人工服务只有可恶的1,2,3等条文),无奈只能写投诉邮件咨询签名生效时间,7天后终于回了封...

    使用微信分享功能只支付的时候遇到修改Android签名后不能正常调用分享功能及支付功能,用微信官方求助(微信、qq、电话均无人工服务只有可恶的1,2,3等条文),无奈只能写投诉邮件咨询签名生效时间,7天后终于回了封邮件给我,就回了4个字给我“立即生效”,自己测试后发现修改后还是无法调用。

    官网求助无果后,搜索了几天发小如下这个信息(非官网)

    原因:当你使用微信登陆或分享的时候,微信的客户端会存储你的app在微信开放平台上配置的包名跟应用签名,如果你在自己的应用里面第一次使用微信登陆或分享后,你的应用相关的信息就会被微信客户端记录了,这时候你再换一个签名文件更改你的应用签名,点微信登陆就会出现没反应,并且友盟的那些回调都没有调用的情况,在更改签名后如果发现自己所有的配置和代码都没有问题的话可以删除手机上的微信。然后重新安装应用即可。

    测试:

    卸载原有微信,重装微信调用分享及支付成功。

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

    2018-02-22 18:21:13
    在这篇微信公众平台开发教程中,我们假定你已经有了PHP语言程序、MySQL...启用微信公众平台开发模式 体验常用接收消息及发送消息类型 了解数据收发原理及消息格式   第一章 申请服务器资源 创建新浪...

    在这篇微信公众平台开发教程中,我们假定你已经有了PHP语言程序、MySQL数据库、计算机网络通讯、及HTTP/XML/CSS/JS等基础。

    我们将使用微信公众账号方倍工作室作为讲解的例子,二维码见左侧。

    本系列教程将引导你完成如下任务:

    1. 创建新浪云计算平台应用
    2. 启用微信公众平台开发模式
    3. 体验常用接收消息及发送消息类型
    4. 了解数据收发原理及消息格式

     

    第一章 申请服务器资源

    创建新浪云计算应用

    申请账号

    我们使用SAE新浪云计算平台作为服务器资源,并且申请PHP环境+MySQL数据库作为程序运行环境。
    申请地址为:

    http://www.sinacloud.com/

    直接点击上述网址,可以看到右上角微博登录的链接。

    点击进入之后,使用新浪微博账号登录 

    登录之后,按照提示注册个人信息即可。 

     

    创建新应用 http://www.cnblogs.com/txw1958/p/wechat-tutorial.html 

    回到首页,在菜单顶部选择 控制台 ,再选择 云应用SAE 

    进入SAE应用列表

    点击下侧的创建新应用,这时会弹出提示, 禁止放置违法违规内容,点击继续创建,弹出如下窗口。

    开发语言选择PHP,运行环境为标准环境,语言版本5.3。二级域名自己想一个名字,也可以就直接用自己的QQ号。应用名称可以用系统默认填的。

    此处配置和本教程必须完全一样!!!

    此处配置和本教程必须完全一样!!!

    此处配置和本教程必须完全一样!!!

    然后点击左下方的创建应用

     

    应用创建成功。并自动跳转到应用列表中,可以看到已经有刚才创建的1354386063这个应用。

     

    创建版本 http://www.cnblogs.com/txw1958/p/wechat-tutorial.html 

    点击刚才创建的应用名称,进入应用主页。

    点击左侧的应用管理下面的代码管理

     

    在代码管理中,选择使用SVN托管的方式。不要使用云空间和Git的方式!

    跳转到代码管理

    点击右侧的“创建版本”

    版本号默认为1,点击创建,有时会弹出安全登录,需要输入安全密码,如果不知道或者忘记了,就点里面的找回密码,重新设置一下。:

    验证通过之后,如下所示

    到这里,就成功创建了一个域名URL为 http://1354386063.sinaapp.com/ 的应用了,记住你的这个URL,后面将会用到。

     原文:http://www.cnblogs.com/txw1958/p/wechat-tutorial.html 

    上传代码 http://www.cnblogs.com/txw1958/p/wechat-tutorial.html 

    下述代码是一个微信接口文件,看不懂没有关系,你可以暂时不用弄明白它的意思。

    复制代码
    <?php
    /*
        方倍工作室 http://www.cnblogs.com/txw1958/
        CopyRight 2013 www.fangbei.org  All Rights Reserved
    */
    header('Content-type:text');
    define("TOKEN", "weixin");
    $wechatObj = new wechatCallbackapiTest();
    if (isset($_GET['echostr'])) {
        $wechatObj->valid();
    }else{
        $wechatObj->responseMsg();
    }
    
    class wechatCallbackapiTest
    {
        public function valid()
        {
            $echoStr</span> = <span style="color: #800080;">$_GET["echostr"];
            if($this->checkSignature()){
                header('content-type:text');
                echo $echoStr;
                exit;
            }
        }
    
        private function checkSignature()
        {
            $signature</span> = <span style="color: #800080;">$_GET["signature"];
            $timestamp</span> = <span style="color: #800080;">$_GET["timestamp"];
            $nonce</span> = <span style="color: #800080;">$_GET["nonce"];
    
            $token = TOKEN;
            $tmpArr</span> = <span style="color: #0000ff;">array</span>(<span style="color: #800080;">$token, $timestamp</span>, <span style="color: #800080;">$nonce);
            sort($tmpArr, SORT_STRING);
            $tmpStr</span> = <span style="color: #008080;">implode</span>( <span style="color: #800080;">$tmpArr );
            $tmpStr</span> = <span style="color: #008080;">sha1</span>( <span style="color: #800080;">$tmpStr );
    
            if( $tmpStr</span> == <span style="color: #800080;">$signature ){
                return true;
            }else{
                return false;
            }
        }
    
        public function responseMsg()
        {
            $postStr</span> = <span style="color: #800080;">$GLOBALS["HTTP_RAW_POST_DATA"];
    
            if (!empty($postStr)){
                $postObj</span> = <span style="color: #008080;">simplexml_load_string</span>(<span style="color: #800080;">$postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
                $fromUsername</span> = <span style="color: #800080;">$postObj->FromUserName;
                $toUsername</span> = <span style="color: #800080;">$postObj->ToUserName;
                $keyword</span> = <span style="color: #008080;">trim</span>(<span style="color: #800080;">$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($keyword</span> == "?" || <span style="color: #800080;">$keyword == "?")
                {
                    $msgType = "text";
                    $contentStr = date("Y-m-d H:i:s",time());
                    $resultStr</span> = <span style="color: #008080;">sprintf</span>(<span style="color: #800080;">$textTpl, $fromUsername</span>, <span style="color: #800080;">$toUsername, $time</span>, <span style="color: #800080;">$msgType, $contentStr);
                    echo $resultStr;
                }
            }else{
                echo "";
                exit;
            }
        }
    }
    ?>
    复制代码

    我们将使用上述代码与微信公众平台对接。直接下载方倍工作室已经压缩好的上述代码的zip文件点此进入下载

    回到SAE的代码管理界面中。

    再选择“上传代码包”,点击上传文件,选择刚才的index.zip文件,点击上传,上传成功后中间是一个绿色的横条,如下所示

    如果没有绿色的横条,表示上传失败,需要重试。可以考虑在Chrome浏览器下重试一下。

    点击编辑代码按钮,

     有时候需要输入自己的安全密码,如果不记得了就点击“找回密码”。

    安全验证成功后继续之前的操作。

    我们可以看到index.php已经上传成功,双击可以查看编辑里面的代码

    新浪云应用的创建就成功了。

    经测试,有的应用会自动出现一个叫index.html的文件,右键点击该文件,并删除!!

    只需要我们自己上传的index.php和config.yaml文件就可以了。多余的要删除!!!

    实名认证

    新浪SAE要求用户实名认证之后才能正常使用新浪云。实名认证是免费的。认证后可获得200个云豆。

    在左侧目录列表中,找到实名认证目录,在页面中上传身份证并等待审核,审核成功之后,如下图所示。

     

    充值(本步骤可选择性进行)

    新浪云SAE实行的是配额免费+超额付费的方式,相关标准请查看SAE价格体系介绍。初期对于大部分用户来说免费配额已够用,如果您将来使用量比较大建议预先至少充值100元获得10000云豆,以免超额后应用被禁用而影响业务。

    第二章 启用开发模式

    微信公众平台开发模式

    ①个人开发者使用测试号

    个人学习开发建议使用测试号 

    微信测试号地址:http://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login 

    登录后,在接口配置信息中填写刚才生成的URL地址和Token.

    URL地址就是QQ号的二级域名地址:http://1.1354386063.applinzi.com/ 或者  http://1354386063.applinzi.com/都可以。

    Token在程序中固定为 weixin

    填写好提交

     

    顶部显示配置成功

    如果提示“token验证失败”,多重次几次。

     

    ②企业开发者并且有订阅号或者服务号

    微信公众平台地址:https://mp.weixin.qq.com 

    登录微信公众平台后台,在左侧列表中最下方,找到“ 基本配置 ”,点击进入

    进入服务器配置填写框。

    点击“修改配置”按钮

    此处的URL为上篇中介绍的云应用的域名,而Token在index.php中定义为weixin。EncodingAESKey则不用填,点击“随机生成”让自动生成一个,消息加解密方式选择“明文模式”,然后点击“提交”按钮。

     

    在弹出的提示框中,点击“确定”

    配置修改后如图所示,再点击“启用”按钮

    询问“是否确定开启服务器配置”,点击“确定”

    如果提示“token验证失败”,可以先重次几次,微信服务器有时候不稳定。另外新浪SAE要求进行实名认证,请先上传身份证进行实名认证并通过审核后再试!

    如果还是失败,请先用微信调试器测试一下url和token是否正确,点此查看详细测试方法

    成功启用后如图。

    恭喜,你成功启用开发模式。

     

    自动回复

    在上面的例子中,实现了一个发送“?”就能回复当前时间的功能。
    效果如下:

    至此,你的微信公众平台账号已经实现自动回复了。 

     

    第三章 常用消息类型接收与发送

     

    全能型消息代码代码

    你可以使用微信支付购买我们的全能版微信开发入门教程代码,仅需要¥1元,支持一下我们。

    微信扫描二维码关注后返回购买图文链接,然后进入购买:

    将代码下载后按照上述同样的方法配置到接口中,可以体验到更多,更强的功能。

    效果图如下

      

      

      

      

    你将体验到微信公众账号中最常见的接收消息及发送消息的类型。

     

     

    第四章 数据收发原理及消息数据格式

     

    ★ 本章是理论部分,初学者会比较难以理解,不用太过追究,看不懂可以跳过去。

    开发模式成为开发者时的消息校验原理

    在开发者首次提交验证申请时,微信服务器将发送GET请求到填写的URL上,并且带上四个参数(signature、timestamp、nonce、echostr),开发者通过对签名(即signature)的效验,来判断此条消息的真实性。

    此后,每次开发者接收用户消息的时候,微信也都会带上前面三个参数(signature、timestamp、nonce)访问开发者设置的URL,开发者依然通过对签名的效验判断此条消息的真实性。效验方式与首次提交验证申请一致。

    参数描述
    signature 微信加密签名,signature结合了开发者填写的token参数和请求中的timestamp参数、nonce参数。
    timestamp 时间戳
    nonce 随机数
    echostr 随机字符串

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

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

    启用接口是由代码中的checkSignature()函数来实现校验的。如果对这一原理难以理解,可以暂时不用深究,继续看下面

     

    成为开发者后消息收发时的原理

    上一章节中图,当用户发送一个“?”时,系统回复了一个时间

    这一原理的消息流程图如下所示。

    从上图可以看出,用户在发送一个?后,微信服务器将组装一个消息发送给我们自己的服务器,自己的服务器然后回复一个时间,并且将该时间也按一定的规则组装,回复给公众账号,公众账号再回复给用户,在这个收发过程中,发送方和接收方进行了调换(ToUserName和FromUserName值互换),收发都是以xml格式在后台进行传输的,

    所以掌握各种消息类型的接收回复就是进行微信公众平台开发的基础

    下面对前面所述的各种消息类型讲解其XML数据包的格式。

     

    各种收发消息的XML数据包分析

    接收消息

    1. 文本(包括表情)
    接收文本及表情

    文字后台格式:

    复制代码
    <xml>
     <ToUserName><![CDATA[gh_680bdefc8c5d]]></ToUserName>
     <FromUserName><![CDATA[oIDrpjqASyTPnxRmpS9O_ruZGsfk]]></FromUserName>
     <CreateTime>1359028446</CreateTime>
     <MsgType><![CDATA[text]]></MsgType>
     <Content><![CDATA[测试文字]]></Content>
     <MsgId>5836982729904121631</MsgId>
    </xml>
    复制代码

    表情后台格式

    复制代码
    <xml><ToUserName><![CDATA[gh_680bdefc8c5d]]></ToUserName>
    <FromUserName><![CDATA[oIDrpjqASyTPnxRmpS9O_ruZGsfk]]></FromUserName>
    <CreateTime>1359044526</CreateTime>
    <MsgType><![CDATA[text]]></MsgType>
    <Content><![CDATA[/::)/::~/::B/::|/:8-)]]></Content>
    <MsgId>5837051792978241864</MsgId>
    </xml>
    复制代码

    XML格式讲解

    复制代码
    ToUserName 消息接收方微信号,一般为公众平台账号微信号
    FromUserName 消息发送方微信号
    CreateTime 消息创建时间
    MsgType 消息类型;文本消息为text
    Content 消息内容
    MsgId 消息ID号
    复制代码

    可以看出,文本和表情的消息类型均为文本

    2. 图片
    接收图片

    后台格式:

    复制代码
    <xml><ToUserName><![CDATA[gh_680bdefc8c5d]]></ToUserName>
    <FromUserName><![CDATA[oIDrpjqASyTPnxRmpS9O_ruZGsfk]]></FromUserName>
    <CreateTime>1359028479</CreateTime>
    <MsgType><![CDATA[image]]></MsgType>
    <PicUrl><![CDATA[http://mmbiz.qpic.cn/mmbiz/L4qjYtOibummHn90t1mnaibYiaR8ljyicF3MW7XX3BLp1qZgUb7CtZ0DxqYFI4uAQH1FWs3hUicpibjF0pOqLEQyDMlg/0]]></PicUrl>
    <MsgId>5836982871638042400</MsgId>
    <MediaId><![CDATA[PGKsO3LAgbVTsFYO7FGu51KUYa07D0C_Nozz2fn1z6VYtHOsF59PTFl0vagGxkVH]]></MediaId>
    </xml>
    复制代码

    XML格式讲解

    复制代码
    ToUserName 消息接收方微信号,一般为公众平台账号微信号
    FromUserName 消息发送方微信号
    CreateTime 消息创建时间
    MsgType 消息类型;图片消息为image
    PicUrl 图片链接地址,可以用HTTP GET获取
    MsgId 消息ID号
    复制代码

    3. 语音
    接收语音

    后台格式:

    复制代码
    <xml>
        <ToUserName><![CDATA[gh_d035bb259cf5]]></ToUserName>
        <FromUserName><![CDATA[owEUGj4BW8yeWRvyEERiVGKwAF1Q]]></FromUserName>
        <CreateTime>1364883809</CreateTime>
        <MsgType><![CDATA[voice]]></MsgType>
        <MediaId><![CDATA[JfmCezZ3Cwp0FwUvMADwwhvp-XScuvpictubpw0c6ALyA8tj3HLU4PoXzMpIY72P]]></MediaId>
        <Format><![CDATA[amr]]></Format>
        <MsgId>5862131322594912688</MsgId>
    </xml>
    复制代码

    XML格式讲解

    复制代码
    ToUserName 消息接收方微信号,一般为公众平台账号微信号
    FromUserName 消息发送方微信号
    CreateTime 消息创建时间
    MsgType 消息类型;语音消息为voice
    MediaId 媒体ID
    Format 语音格式,这里为amr
    MsgId 消息ID号
    复制代码
    附:AMR接口简介
    全称Adaptive Multi-Rate,主要用于移动设备的音频,压缩比比较大,但相对其他的压缩格式质量比较差,由于多用于人声,通话,效果还是很不错的。

    4. 视频

    接收视频

    后台格式:

    复制代码
    xml><ToUserName><![CDATA[gh_680bdefc8c5d]]></ToUserName>
    <FromUserName><![CDATA[oIDrpjqASyTPnxRmpS9O_ruZGsfk]]></FromUserName>
    <CreateTime>1359028186</CreateTime>
    <MsgType><![CDATA[video]]></MsgType>
    <MediaId><![CDATA[DBVFRIj29LB2hxuYpc0R6VLyxwgyCHZPbRj_IIs6YaGhutyXUKtFSDcSCPeoqUYr]]></MediaId>
    <ThumbMediaId><![CDATA[mxUJ5gcCeesJwx2T9qsk62YzIclCP_HnRdfTQcojlPeT2G9Q3d22UkSLyBFLZ01J]]></ThumbMediaId>
    <MsgId>5836981613212624665</MsgId>
    </xml>
    复制代码

    XML格式讲解

    复制代码
    ToUserName 消息接收方微信号,一般为公众平台账号微信号
    FromUserName 消息发送方微信号
    CreateTime 消息创建时间
    MsgType 消息类型;视频消息为video
    MediaId 媒体ID
    ThumbMediaId 媒体缩略ID?
    MsgId 消息ID号
    复制代码

    5. 位置

    接收位置

    后台格式:

    复制代码
    <xml>
    <ToUserName><![CDATA[gh_680bdefc8c5d]]></ToUserName>
    <FromUserName><![CDATA[oIDrpjqASyTPnxRmpS9O_ruZGsfk]]></FromUserName>
    <CreateTime>1359036619</CreateTime>
    <MsgType><![CDATA[location]]></MsgType>
    <Location_X>22.539968</Location_X>
    <Location_Y>113.954980</Location_Y>
    <Scale>16</Scale>
    <Label><![CDATA[中国广东省深圳市南山区华侨城深南大道9789号 邮政编码: 518057]]></Label>
    <MsgId>5837017832671832047</MsgId>
    </xml>
    复制代码

    XML格式讲解

    复制代码
     ToUserName 消息接收方微信号,一般为公众平台账号微信号
     FromUserName 消息发送方微信号
     CreateTime 消息创建时间
     MsgType 消息类型,地理位置为location
     Location_X 地理位置纬度
     Location_Y 地理位置经度
     Scale 地图缩放大小
     Label 地理位置信息
     MsgId 消息ID号
    复制代码

    6. 链接

    接收链接

    后台格式:

    复制代码
    <xml>
    <ToUserName><![CDATA[gh_680bdefc8c5d]]></ToUserName> 
    <FromUserName><![CDATA[oIDrpjl2LYdfTAM-oxDgB4XZcnc8]]></FromUserName> 
    <CreateTime>1359709372</CreateTime> 
    <MsgType><![CDATA[link]]></MsgType> 
    <Title><![CDATA[微信公众平台开发者的江湖]]></Title> 
    <Description><![CDATA[陈坤的微信公众号这段时间大火,大家..]]></Description> 
    <Url><![CDATA[http://israel.duapp.com/web/photo.php]]></Url> 
    <MsgId>5839907284805129867</MsgId> 
    </xml> 
    复制代码

    XML格式讲解

    复制代码
     ToUserName 消息接收方微信号,一般为公众平台账号微信号
     FromUserName 消息发送方微信号
     CreateTime 消息创建时间
     MsgType 消息类型,链接为link
     Title 图文消息标题
     Description 图文消息描述
     Url 点击图文消息跳转链接
     MsgId 消息ID号
    复制代码

     

    回复消息

    只介绍三种格式的消息:文本、图文、音乐。其中图文消息包括单条图文消息和多条图文消息,展示方式有一点点不同。

    1. 文本消息格式
    回复文本

    后台格式:

    复制代码
    <xml>
    <ToUserName><![CDATA[oIDrpjqASyTPnxRmpS9O_ruZGsfk]]></ToUserName>
    <FromUserName><![CDATA[gh_680bdefc8c5d]]></FromUserName>
    <CreateTime>1359036631</CreateTime>
    <MsgType><![CDATA[text]]></MsgType>
    <Content><![CDATA[【深圳】天气实况 温度:27℃ 湿度:59% 风速:东北风3级
    11月03日 周日 27℃~23℃ 小雨 东北风4-5级
    11月04日 周一 26℃~21℃ 阵雨 微风
    11月05日 周二 27℃~22℃ 阴 微风]]></Content>
    <FuncFlag>0</FuncFlag>
    </xml>
    复制代码

    XML格式讲解

    复制代码
     FromUserName 消息发送方
     ToUserName 消息接收方
     CreateTime 消息创建时间
     MsgType 消息类型,文本消息必须填写text
     Content 消息内容,大小限制在2048字节,字段为空为不合法请求
     FuncFlag 星标字段
    复制代码

     
    2. 图文消息格式
    2.1 单条图文消息
    回复单条图文


    后台格式:

    复制代码
    <xml>
        <ToUserName><![CDATA[oIDrpjqASyTPnxRmpS9O_ruZGsfk]]></ToUserName>
        <FromUserName><![CDATA[gh_680bdefc8c5d]]></FromUserName>
        <CreateTime>1359011899</CreateTime>
        <MsgType><![CDATA[news]]></MsgType>
        <Content><![CDATA[]]></Content>
        <ArticleCount>1</ArticleCount>
        <Articles>
            <item>
                <Title><![CDATA[[苹果产品信息查询]]></Title>
                <Description><![CDATA[序列号:USE IMEI NUMBER
    IMEI号:358031058974471
    设备名称:iPhone 5C
    设备颜色:
    设备容量:
    激活状态:已激活
    电话支持:未过期[2014-01-13]
    硬件保修:未过期[2014-10-14]
    生产工厂:中国]]>
        </Description>
                <PicUrl><![CDATA[http://www.fangbei.org/weixin/weather/icon/banner.jpg]]></PicUrl>
                <Url><![CDATA[]]></Url>
            </item>
        </Articles>
        <FuncFlag>0</FuncFlag>
    </xml>
    复制代码

    2.2 多图文消息

    回复多图文

    后台数据格式

    复制代码
    <xml>
        <ToUserName><![CDATA[oIDrpjqASyTPnxRmpS9O_ruZGsfk]]></ToUserName>
        <FromUserName><![CDATA[gh_680bdefc8c5d]]></FromUserName>
        <CreateTime>1359011829</CreateTime>
        <MsgType><![CDATA[news]]></MsgType>
        <Content><![CDATA[]]></Content>
        <ArticleCount>5</ArticleCount>
        <Articles>
            <item>
                <Title><![CDATA[【深圳】天气实况 温度:3℃ 湿度:43﹪ 风速:西南风2级]]></Title>
                <Description><![CDATA[]]></Description>
    <PicUrl><![CDATA[http://www.fangbei.org/weixin/weather/icon/banner.jpg]]></PicUrl>
                <Url><![CDATA[]]></Url>
            </item>
            <item>
                <Title><![CDATA[06月24日 周四 2℃~-7℃ 晴 北风3-4级转东南风小于3级]]></Title>
                <Description><![CDATA[]]></Description>
                <PicUrl><![CDATA[http://www.fangbei.org/weixin/weather/icon/d00.gif]]></PicUrl>
                <Url><![CDATA[]]></Url>
            </item>
            <item>
                <Title><![CDATA[06月25日 周五 -1℃~-8℃ 晴 东南风小于3级转东北风3-4级]]></Title>
                <Description><![CDATA[]]></Description>
        <PicUrl><![CDATA[http://www.fangbei.org/weixin/weather/icon/d00.gif]]></PicUrl>
                <Url><![CDATA[]]></Url>
            </item>
            <item>
                <Title><![CDATA[06月26日 周六 -1℃~-7℃ 多云 东北风3-4级转东南风小于3级]]></Title>
                <Description><![CDATA[]]></Description>
    <PicUrl><![CDATA[http://www.fangbei.org/weixin/weather/icon/d01.gif]]></PicUrl>
                <Url><![CDATA[]]></Url>
            </item>
            <item>
                <Title><![CDATA[06月27日 周日 0℃~-6℃ 多云 东南风小于3级转东北风3-4级]]></Title>
                <Description><![CDATA[]]></Description>
    <PicUrl><![CDATA[http://www.fangbei.org/weixin/weather/icon/d01.gif]]></PicUrl>
                <Url><![CDATA[]]></Url>
            </item>
        </Articles>
        <FuncFlag>0</FuncFlag>
    </xml>
    复制代码

    XML格式讲解

    复制代码
    FromUserName 消息发送方
     ToUserName 消息接收方
     CreateTime 消息创建时间
     MsgType 消息类型,图文消息必须填写news
     Content 消息内容,图文消息可填空
     ArticleCount 图文消息个数,限制为10条以内
     Articles 多条图文消息信息,默认第一个item为大图
      Title 图文消息标题
      Description 图文消息描述
      PicUrl 图片链接,支持JPG、PNG格式,较好的效果为大图640*320,小图80*80
      Url 点击图文消息跳转链接
    FuncFlag 星标字段
    复制代码

     3. 音乐消息

    回复音乐消息

    后台格式:

    复制代码
    <xml>
        <ToUserName><![CDATA[ollB4jqgdO_cRnVXk_wRnSywgtQ8]]></ToUserName>
        <FromUserName><![CDATA[gh_b629c48b653e]]></FromUserName>
        <CreateTime>1372310544</CreateTime>
        <MsgType><![CDATA[music]]></MsgType>
        <Music>
            <Title><![CDATA[最炫民族风]]></Title>
            <Description><![CDATA[凤凰传奇]]></Description>
            <MusicUrl><![CDATA[http://zj189.cn/zj/download/music/zxmzf.mp3]]></MusicUrl>
            <HQMusicUrl><![CDATA[http://zj189.cn/zj/download/music/zxmzf.mp3]]></HQMusicUrl>
        </Music>
        <FuncFlag>0</FuncFlag>
    </xml>
    复制代码

    XML格式讲解

    复制代码
    ToUserName     接收方帐号(收到的OpenID)
    FromUserName     开发者微信号
    CreateTime     消息创建时间
    MsgType          消息类型,此处为music
        Title       音乐标题
        Description 音乐描述
        MusicUrl     音乐链接
        HQMusicUrl     高质量音乐链接,WIFI环境优先使用该链接播放音乐
    FuncFlag     位0x0001被标志时,星标刚收到的消息。
    复制代码

     

    事件消息类型

    目前用户在关注和取消关注,以及点击菜单的时候会自动向公众平台发送事件推送消息:

    1. 关注事件

    复制代码
    <xml>
        <ToUserName><![CDATA[gh_b629c48b653e]]></ToUserName>
        <FromUserName><![CDATA[ollB4jv7LA3tydjviJp5V9qTU_kA]]></FromUserName>
        <CreateTime>1372307736</CreateTime>
        <MsgType><![CDATA[event]]></MsgType>
        <Event><![CDATA[subscribe]]></Event>
        <EventKey><![CDATA[]]></EventKey>
    </xml>
    复制代码

    2. 取消关注事件

    复制代码
    <xml>
        <ToUserName><![CDATA[gh_b629c48b653e]]></ToUserName>
        <FromUserName><![CDATA[ollB4jqgdO_cRnVXk_wRnSywgtQ8]]></FromUserName>
        <CreateTime>1372309890</CreateTime>
        <MsgType><![CDATA[event]]></MsgType>
        <Event><![CDATA[unsubscribe]]></Event>
        <EventKey><![CDATA[]]></EventKey>
    </xml>
    复制代码

    3. 菜单点击事件

    复制代码
    <xml>
        <ToUserName><![CDATA[gh_680bdefc8c5d]]></ToUserName>
        <FromUserName><![CDATA[oIDrpjqASyTPnxRmpS9O_ruZGsfk]]></FromUserName>
        <CreateTime>1377886191</CreateTime>
        <MsgType><![CDATA[event]]></MsgType>
        <Event><![CDATA[CLICK]]></Event>
        <EventKey><![CDATA[天气深圳]]></EventKey>
    </xml>
    复制代码

    XML格式讲解

    复制代码
    ToUserName     接收方微信号
    FromUserName 发送方微信号,若为普通用户,则是一个OpenID
    CreateTime     消息创建时间
    MsgType     消息类型,event
    Event     事件类型,subscribe(订阅)、unsubscribe(取消订阅)、CLICK(自定义菜单点击事件)
    EventKey 事件KEY值,与自定义菜单接口中KEY值对应
    复制代码

     

     

    第五章 小结

     

    总的来说,通过本教程,你得到了以下收获:

    • 1. 通过本教程得到了一个新浪云应用,该应用以后将会收取少量费用。你也可以另外自行购买空间服务器。
    • 2. 成功启用了开发模式,并且实现了时间的自动回复。
    • 3. 体验了微信公众账号最常用的接收消息及发送消息类型
    • 4. 了解了微信公众平台开发的原理,并且熟悉了各种消息及发送是怎么一回事
    展开全文
  •  自从方倍工作室在博客园推出微信公众平台开发系列教程后,受到广大微信开发人员及爱好者的热情关注,相关文章的日访问量高达2万人次,而《微信公众平台开发入门教程》的阅读量超过50万,博客访问量总计超过500万,...
  • 微信公众平台二次开发技术文档

    千次阅读 2019-01-05 09:01:27
    本文档基于腾讯公司微信二次开发的相关规范,对微信二次开发的流程、步骤做了相关的说明,方便程序设计和开发人员快速掌握微信公众平台开发技术,便于提高代码的编写效率以及减少出现错误概率。 使用范围 本...
  • 微信开放平台初步对接开发(PHP)

    千次阅读 2019-03-11 18:55:38
    首先,申请一个微信开放平台,相关的申请流程这里就不具体说了,当时傻乎乎的申请了定制化开发服务商,导致耽误了一段时间,一定要申请平台型服务商! 第二,选择合适的代码框架,如果你的环境能够支持EasyWechat,...
  • 高性能微信公众平台开发

    千次阅读 2014-09-19 10:07:49
    高性能微信公众平台开发 发表于2014-09-16 07:56| 5967次阅读| 来源《程序员》| 10 条评论| 作者张毅 ...《程序员》杂志微信高性能移动互联网微信公众...那么,在进行微信开发时,面对用户较多的情况下,应如何
  • 微信公众平台PHP开发

    万次阅读 热门讨论 2013-07-12 09:51:55
    最近在做微信公众平台开发,一口气写了二十几个功能,挺有意思的~     今天来分享一下开发经验~ 微信公众平台提供的接口很简单,先看看消息交互流程:     说的通俗一些,用户使用微信发送消息 -> 微信将数据...
  • NodeJS微信公众平台开发

    千次阅读 2015-07-31 10:12:21
    微信是手机用户必备的App,微信最开始只是作为社交通讯应用供用户使用,但随着用户量不断的增加,微信的公众号在微信上表现出来了它强大的一面,微信公众平台具有四大优势:1、平台更加稳固;2.用户关系更加平等;3.信息...
  • 微信公众平台开发最佳实践 源代码

    热门讨论 2020-07-30 23:30:27
    第10章 微信开发实用技巧 289 10.1 表情飘落效果 289 10.2 QQ表情和Emoji表情 290 10.3 微信版本及手机系统 293 10.4 Weixin JS接口 295 10.5 发送给朋友与分享到朋友圈 297 10.6 Discuz微社区 299 附录A ...
  • 微信公众平台开发问答

    千次阅读 2016-01-16 11:31:17
    微信公众平台开发问答是一个微信知识问答区,专注于提供微信应用开发技术知识的整理、归类和检索。   主题:新手常见问题 问:我是新手,没有开发基础,应该如何学习微信公众平台开发?答:先学习PHP和Mysql...
  • 作者:zbtree 这篇文章主要介绍了基于php的微信公众平台开发入门,实例分析了微信公众平台从注册、配置方法及接口代码的实现技巧,深入浅出。希望可以帮助大家快速入门。 CSDN学院开设了系列直播《微信公众号开发...
  • 在这篇微信公众平台开发教程中,我们假定你已经有了PHP语言程序、MySQL...创建新浪云计算平台应用启用微信公众平台开发模式体验常用接收消息及发送消息类型了解数据收发原理及消息格式   第一章 申请服务器资源
  • 微信公众号开发5-自定义菜单-微信开发php讲师介绍: 秦子恒,CEO/董事长/总经理,大秦电商创始人,专注网络技术的电商应用。已经出品《1小时快速建站》《微博营销实战》《PHP采集》《网络招商系统》课程介绍: ...
  • 在这篇微信公众平台开发教程中,我们将介绍如何使用微信开放平台接口实现移动应用微信登录的功能。   移动应用微信登录是基于OAuth2.0协议标准构建的微信OAuth2.0授权登录系统。 在进行微信OAuth2.0授权...
  • 关键字:微信 应用开发教程原文:http://www.cnblogs.com/txw1958/p/weixin-yingyonghao.html本文介绍微信应用开发过程。目前还处于内测阶段,微信只邀请了部分企业参与封测。想必大家都关心应用号的最终形态...
  • 企业微信应用开发那些事

    千次阅读 2018-11-17 23:41:27
    企业微信应用开发那些事 简介: 本篇博文是针对本人上传的企业微信PHP-SDK进行讲解的,因为当时开发企业微信时,一直没有找到相关的参考资料,官方提供的PHP-SDK也是存在各种问题,所以在这里介绍一下自己开发过程中遇到...
  • 微信公众平台开发入门 订阅后,请点击此处观看大牛全套视频课程:课程播放页链接...
  • 因为要进行微信开发,就必须要成为微信开发者,要想成为微信开发者,就必须要有服务器响应微信的 Token 验证,如果没有公网服务器环境,可以去了解下BAE、SAE或阿里云,这里以 BAE 为例。 前提条件:  (1)...
1 2 3 4 5 ... 20
收藏数 34,277
精华内容 13,710
关键字:

微信开发平台删除应用