微信公众平台开发费用其实并不高 及微信公众平台开发简单教程

今天我一朋友问我一个技术上的问题,通过PHP cURL来请求外部接口,接口返回的是一个JSON的字符串,但如果把字符串copy下来然后赋值 给一个变量再将它json_decode是OK的不会有错,可以正常的得到对应的数组。但如果直接返cURL返回的字符串json_decode返回的居 然是NULL,他试了N多办法最终没有搞定,如是就问我要怎么处理。我当时也想了很多办法,后来发现是编码的问题,改成UTF-8的编码就OK了。

   这中间不可避免的谈到了他们的应用场景和需求,发现原来是在做一个微信公众平台的开发,我说你怎么不早找我啊,免得你纠结这么久,好歹我也是在腾讯做架 构师啊,尽管不是在微信部门(我是在上海漕河泾的腾讯,这里没有微信的部门),他说原先他们是找了一家公司做的,后来完成后,想新增一个功能,但那家公司 就狮子大开口增一个功能要4W......我去试了下他们的所谓开发,其实也没什么功能就是做个了用HTML5做的手机站,然后把手机站跟微信公众平台对 接下,然后定制了几个功能,他们就花了8W,我跟我朋友说你们真有钱!你给我做,功能完全一样,我只要一半就够了...微信公众平台开发其实最主要的费用 无非就是服务器费用,域名费用,程序开发,页面设计费用等除了这些费用外,我真想不出其它的费用了,因为申请微信服务号是免费的,只要有一丁点技术基础就 能对接上,所以基本上不会产生其它的费用,总体来说微信公众平台开发的成本其实并不高。

   其实我是想说微信公众平台开发,其实成本真的不高,如果你有一些好的想法,想结合微信公众平台开发出来,你又没技术基础,所以千万不要去找那些所谓的专业微信公众平台开发的公司,90%都是大萝卜坑,不是漫天要价就是夸大微信公众平台开发的难度。

为了让大家对微信公众平台开发进一步的了解,我写个教程,废话不多说了,请往下看:
微信公众平台开发的消息流程如下图
微信公众平台消息处理流程
(注:用户使用微信发送消息 -> 微信将数据发送给开发者 -> 开发者处理消息并返回数据至微信 -> 微信把返回数据发送给用户,期间数据交互通过XML完成)

看了以后是不是觉得很简单啊?那接着往下看

第一步,去微信公众平台上申请公众账号,地址是:https://mp.weixin.qq.com/
微信公众平台开发
按上面的要求填写好然后注册
微信公众平台开发
去你填写的那个邮箱里验证一下,完全邮箱验证过程,成功后然后下一步
微信公众平台开发
这里注意下,这里要选组织,在为个人的只能申请订阅号,只有组织的才能申请服务号,订阅号是不能拿到用户发的消息的。你可会有很多疑问,比如为什么要拿到用户的消息啊...后面我们会讲到,所以这里你只要按这个选就好了。

之后就是按要求一一填写,然后等待微信平台审核了。

审核通过后,登录进去你就能看到下面这样的界面
微信公众平台开发当然这个审核过程可能会要花些时间,所以请稍安勿燥,耐心等候(我是通过内部工牌申请的,所以比较快)。

其它的你先不要管,都比较简单,点点就都能明白了,最主要的就是高级功能这个选项,点进去后
信息公众平台开发
选开发模式,这上面有解释两种模式的差别,所以就不多啰嗦了。进入开发模式后
微信公众平台开发
首先,你要确认开发模式已开启,就是上面图片右上角的开关
其次,你要保证你的接口配置信息的里的URL必须是外网地址,也就是说外网是可以正常访问的。好了,上面的信息都OK后,那你的微信公众平台开发的任务就完成了一大半了。

接着就是对用户发的消息进行解释与回应了,这里你首先要认真的仔细的看下微信公众平台里的消息接口,详见http://mp.weixin.qq.com/wiki/index.php?title=%E6%B6%88%E6%81%AF%E6%8E%A5...。这里面有你需要的POST到你接口的消息数据格式,以及你回应的数据格式。

同样是在“高级功能”菜单中配置,需要配置两项参数:
URL: 开发者应用访问地址,目前仅支持80端口
TOKEN: 随意填写,用于生成签名,以“xxxx”为例。
填写完把下面代码保存为你上面填写的URL对应的程序文件中,最后点击“提交”完成验证。(我这里用PHP做例子,实际情况请遵行你自己的程序)
<?php
define("TOKEN", "xxxx"); //TOKEN值
$wechatObj = new wechat();
$wechatObj->valid();
class wechat {
    public function valid() {
        $echoStr = $_GET["echostr"];
        if($this->checkSignature()){
            echo $echoStr;
            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;
        }
    }
}
?>
这就是微信公众平台校验URL是否正确接入,研究代码没有实质性意义,验证完即可删除文件,就不详细说明了
微信公众平台与开发者之间的数据交互是通过XML完成的,既然用到XML,当然得遵循规范,所以在着手开发之前先看看官方接口文档提供的XML规范,以文本消息为例:
 
当用户向微信公众账号发送消息时,微信服务器会POST给开发者一些数据:
<xml>
<!--开发者微信号-->
<ToUserName><![CDATA[toUser]]></ToUserName>
<!--发送方帐号(OpenID)-->
<FromUserName><![CDATA[fromUser]]></FromUserName> 
<!--消息创建时间 (整型)-->
<CreateTime>12345678</CreateTime>
<!--消息类别 (text文本消息)-->
<MsgType><![CDATA[text]]></MsgType>
<!--消息内容-->
<Content><![CDATA[content]]></Content>
<!--消息ID (64位整型)-->
<MsgId>1234567890123456</MsgId>
</xml>
开发者在处理完消息后需要返回数据给微信服务器:
<xml>
<!--接收方帐号(OpenID)-->
<ToUserName><![CDATA[toUser]]></ToUserName>
<!--开发者微信号-->
<FromUserName><![CDATA[fromUser]]></FromUserName>
<!--消息创建时间 (整型)-->
<CreateTime>12345678</CreateTime>
<!--消息类别 (text文本消息)-->
<MsgType><![CDATA[text]]></MsgType>
<!--回复消息内容-->
<Content><![CDATA[content]]></Content>
<!--星标操作(位0x0001被标志时 星标刚收到的消息)-->
<FuncFlag>0</FuncFlag>
</xml>
除文本消息外,微信公众平台还支持用户发送图片消息、地理位置消息、链接消息、事件推送,而开发者还可以向微信公众平台回复音乐消息和图文消息,各类消息XML规范也可以参见官方文档。
来看看官方提供的一个PHP示例,我做了一些精简:
<?php
$wechatObj = new wechat();
$wechatObj->responseMsg();
class wechat {
    public function responseMsg() {

        //---------- 接 收 数 据 ---------- //

        $postStr = $GLOBALS["HTTP_RAW_POST_DATA"]; //获取POST数据

        //用SimpleXML解析POST过来的XML数据
        $postObj = simplexml_load_string($postStr,'SimpleXMLElement',LIBXML_NOCDATA);

        $fromUsername = $postObj->FromUserName; //获取发送方帐号(OpenID)
        $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>";

        $msgType = "text"; //消息类型
        $contentStr = 'hello world~ http://blog.shanglema.com'; //返回消息内容

        //格式化消息模板
        $resultStr = sprintf($textTpl,$fromUsername,$toUsername,
        $time,$msgType,$contentStr);
        echo $resultStr; //输出结果
    }
}
把上面的代码上传到接口配置信息的URL对应的程序文件上,一个微信公众平台自动回复消息的功能就完成了。是不是觉得特没技术含量,是不是觉得特简单?事实就是这样,只要你了解了一切就是这么水到渠成。
好了,微信公众平台开发的简单教程就写到这里吧,我这里有一个PHP的收发消息的类,如果有需要的朋友可以邮件我,我可以发你参考下。地址是:peng.zhan##qq.com (## -> @),当然有任何问题,你也可以不耻下问,我很乐意跟大家一起分享。
本文原创,如想转载请注明出处。

本文链接地址为:http://blog.shanglema.com/open-weixin-platform-development

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/70768.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PHP 对接微信公众号订阅消息详细教程

订阅通知是一个用户主动订阅、服务号按需下发的通知能力。使用过程请遵守《微信公众平台服务协议》《微信公众平台运营规范》。 用户在前述场景主动订阅后&#xff0c;服务号可通过接口向用户发送订阅通知&#xff0c;如信用卡动账提醒、物流到货通知等。订阅通知分为一次性订阅…

教程:提取微信表情包、给公众号分组、在电脑上看公众号、微信提现免手续费

话说阿虚经常在留言区被问到许多关于微信的奇奇怪怪需求 比如怎么提取微信表情包啊&#xff1f;怎么给公众号分组啊&#xff1f;怎么在电脑上看公众号啊&#xff1f;微信提现有没有办法免手续费之类的… 不过还好&#xff0c;这些问题都难不倒我&#xff0c;每个问题都有办法…

天猫精灵智能设备对接(9) 新加技能

其实这个地方就比较简单了&#xff0c;我们所有准备的东西都完事了之后&#xff0c;具体的流程信息如下图所示 首先你要进入阿里语音的开发者平台&#xff0c;给出如下链接地址https://open.bot.tmall.com/。 用淘宝账号登陆后&#xff0c;电机右上角的进入控制台 点击添加新技…

阿里AI labs发布两大天猫精灵新品,将与平头哥共同定制智能语音芯片

作者 | 夕颜 出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09; 2019 年&#xff0c;去年刮起的一阵智能音箱热浪似乎稍微冷却下来&#xff0c;新产品不再像雨后春笋一样层出不穷&#xff0c;挺过市场洗礼的产品更是凤毛麟角&#xff0c;这些产品的性能、技术支持和体验…

天猫精灵简单开发

防火墙和端口 1.安装防火墙 安装iptables-services &#xff1a; 2.防火墙基本操作 查看版本&#xff1a; firewall-cmd --version 显示状态&#xff1a; firewall-cmd --state  查看所有打开的端口&#xff1a; netstat -anp 开启防火墙 systemctl start firewalld 关闭防…

自然语言理解在天猫精灵的实践应用

《SDCC 2017人工智能技术实战实战线上峰会》学习笔记 姜飞俊 Alibaba Group-AI Labs 天猫精灵是一款智能音箱。 自然语言人机交互将融入我们的生活中&#xff1a; 这些场景需要各行各业来提供服务。 自然语音交互系统架构&#xff1a; 自然语言交互——语义理解平台&#x…

记录与天猫精灵对接的经验 2020年8月5日

2020年8月5日 记录与天猫精灵的对接 前言 做之前参考过很多大神写的文章&#xff0c;但完全没看懂&#xff0c; 或者没看懂大神们的具体需求&#xff0c;有些很有意义的博客看到最后跟着尝试等等&#xff0c;最后实现发现我们需求完全不一样&#xff0c;所以走了很多弯路&…

【TB-02模组专题⑦】天猫精灵语音控制TB02 模块之插座方案

本<安信可ble mesh蓝牙模组TB-02模组专题>系列博客学习由官方博客 CSDN安信可博客 潜心所力所写。如有不对之处&#xff0c;请留言&#xff0c;我们及时更改。 1、BLE MESH开发环境linux版搭建&#xff0c;点亮一盏LED灯。 2、简单学习如何对接天猫精灵语音控制的过程…

怎么打造属于自己的天猫精灵

原文地址 看了天猫精灵的介绍&#xff0c;是不是觉得很神奇&#xff0c;实际每个程序要都可以打造属于自己的智能家居 可以实现的功能 点歌 - 最基础的功能了&#xff0c;可以将自己喜欢的歌曲下载下来&#xff0c;随时点歌定时提醒 - 提醒自己吃饭&#xff0c;提醒自己睡觉听…

AI语音技能云开发(天猫精灵技能)折腾记录之一

通过学习&#xff0c;了解技能开发的基本步骤&#xff0c;下面开始折腾 目标&#xff1a;算24&#xff0c;告诉精灵四个数字&#xff0c;精灵反馈有解还是无解。不给答案&#xff0c;绝对不给答案&#xff0c;嗯不然我儿子就不动脑筋了。 先按步骤把框架搭好&#xff0c;这次…

天猫精灵使用体验之三——语音控制电视(借助天猫魔盒)

天猫精灵可以语音控制电视,对于那些追求高科技体验不想动手操作的人,或者是不知道如何使用智能电视跟电视盒子产品的中老年人,都是一个很具诱惑力的卖点——这也是本官拿到天猫精灵后,第一个想做的事情,于是马上赶紧又上天猫买了个天猫魔盒。魔盒还没有拿到手,本官心里面…

用户和天猫精灵通过语音交互的一个典型流程分析

虽然从普通用户眼中&#xff0c;使用语音向天猫精灵发起指令&#xff0c;然后收到后者的语音回复&#xff0c;这个流程似乎很简单&#xff0c;但背后实际上有着人工智能中 ASR&#xff08;语音识别&#xff09;、NLP&#xff08;自然语言处理&#xff09;、TTS&#xff08;语音…

服装打版软件ET2019淘宝100RMB买的

服装打版软件ET2019淘宝100RMB买的

leaf-ui打版

1.leaf-ui提交代码(使用idea),提交前改下package.json中的版本号 2.运行npm run pub(推荐在git bash中运行,在终端可能有问题),执行过程中不要输入其他的命令,如出现提示输入yarn upgrade命令,也不要管. 终端问题如下:(多出一空白行) 出现如下结果证明leaf-ui打版成功 3.前端…

程序员杀入服装行业,时尚需要算法?

在中国&#xff0c;制造业到了要重回高光的时刻。 人们谈起制造业时讨论的不再是廉价劳动力&#xff0c;而是科技、数据和智能。 在前不久的ICCV的TPS赛道的比赛中&#xff0c;深耕服装制造领域的犀牛智造团队从150支队伍中拿下了全球第四名。犀牛智造在2020年9月正式亮相后&a…

ASP.Net网页从打版到发布

1.安装IIS服务器 这里以本地计算机为例&#xff08;window7&#xff09; 安装成功之后&#xff0c;浏览器打开127.0.0.1看到如下画面即为成功。 2.ASP.Net web打版 以VS2010为例 &#xff08;1&#xff09;首先设置启动项目 &#xff08;2&#xff09;设置起始页 &#xff0…

matlab画服装版,设计师必备款式图干货|如何绘制一张完美的款式图?看完这些你就懂了...

原标题&#xff1a;设计师必备款式图干货&#xff5c;如何绘制一张完美的款式图&#xff1f;看完这些你就懂了 &#xff0a;服装设计是艺术和技术的完美结合&#xff0c;服装设计是通过服装设计师经过市场调查&#xff0c;分析各种流行因素&#xff0c;进行设计构思&#xff0c…

如何看待服装订单外流现象?

​一件服装从生产到消费者&#xff0c;跨越农业的棉麻种植、畜牧业的毛丝供应、工业化工原料生产&#xff0c;再经过纺纱、坯布织造、面料研发生产、辅料&#xff08;如&#xff1a;纽扣&#xff09;加工&#xff0c;到按设计打版、试生产、原产品量产&#xff0c;最后由品牌商…

javplayer 使用教程_童装裁剪之连衣裙打版教程 有图纸

才智服装技术上万G服装教程&#xff1a;服装微信公众号czzx128微信975851096 可爱的童装连衣裙&#xff0c;带有皱褶袖。侧袋装饰有方便可爱的点缀。使用的布料是“SWEET ANIMAL”系列&#xff0c;100&#xff05;棉的双层纱布。 来源 | https://kokka-fabric.com/craft-sewing…

艺术留学|服装设计专业2019院校排名

近几年十分火热的服装设计专业 希望能够为有对服装设计的感兴趣的同学带来一定的帮助哟! 究竟服装设计是在学什么? 服装设计是否有留学的必要? 服装设计有哪些学校可以选择? 什么是作品集呢? Q1.服装设计是在学什么?就业前景如何? 【本科】&#xff1a;本科期间会…