现在微信越来越热门,大量的公众号涌现,为我们生活带来不少便利。让我们来了解一下这个公众号是怎么出来的。
  一.申请域名服务器
  以前部署一个网站得准备硬件,申请域名,这对于小型网站来说是难以承受的,随着Amazon云服务,百度云,新浪云这些平台的兴起,我们可以直接在云端部署我们服务器,大大提高网站部署效率。
  在百度开发者中心,选择开放云 -- 应用引擎BAE -- 添加部署。


  创建成功后,会分配一个域名 xxx.duapp.com。
  二.申请公众号
  在微信开发者平台申请个人公众号,免费,订阅号和企业号都要审核收费。个人公众号测试已足够。
  服务号、订阅号、企业号的介绍(区别)
  1、订阅号:主要偏于为用户传达资讯(类似报纸杂志),认证前后都是每天只可以群发一条消息;
  2、服务号:主要偏于服务交互(类似银行,114,提供服务查询),认证前后都是每个月可群发4条消息;
  3、企业号:主要用于公司内部通讯使用,需要先有成员的通讯信息验证才可以关注成功企业号;
  三.对接外部服务器

  下载PHP示例代码,修改 wx_sample.php 的TOKEN,然后通过svn上传至百度云平台。
  登录微信公众平台官网后,在公众平台后台管理页面 - 开发者中心页,点击“修改配置”按钮,
  填写服务器地址(URL):xxx.duapp.com/wx_sample.php
  Token: wx_sample.php 中的TOKEN常量
  点击提交。
  四.微信接口说明
  微信提供了PHP的开发接口,采用http post发送xml类型数据。
  通信流程如下:
  ---xml请求---->                ---转发请求-->
  手机微信                  腾讯微信服务器                  百度云服务器
  <---xml响应----                 <---xml响应----
  腾讯微信服务器相当于请求响应中转中心,更多API参见微信开发者文档
  五.webAPI
  现在百度等很多平台都提供了web api的访问接口,直接通过http get发送请求,就可以得到相应的xml或json数据,非常方便。使得API调用更加轻量。
  5.1 LBS
  Location Based Service 简称。依托百度强大的地图,我们可以开发更多丰富的应用。API地址
PHP代码
    -  
-  
-     
- function getAddr($longti, $latitude)    
- {    
-     $url = "http://api.map.baidu.com/geocoder/v2/?ak=${ak}&location=${longti},${lati}&output=json&pois=0";    
-         
-   
- $json = file_get_contents($url);    
-   
-     $obj = json_decode($json);    
-     $status = $obj->status;    
-         
-       
-     if ($obj->status!= 0) {    
-         return '错误:'.$obj->message;    
-     }    
-      
-     return ''.$obj->result->formatted_address;    
- }    
  5.2 图灵机器人
  最智能的聊天机器人,提供了web调用接口,可以很方便开发自己的聊天机器人。API地址
PHP代码
    -  
-  
-     
- function autoChat($info)    
- {    
-     $key = KEY;    
-         
-       
-     $url = "http://www.tuling123.com/openapi/api?key=${key}&info=${info}";    
-     $json = file_get_contents($url);    
-     $obj = json_decode($json);    
-         
-     $content = '';    
-         
-       
-     switch( $obj->code )    
-     {    
-         case 100000:      
-             $content = $obj->text;    
-             break;    
-         case 200000:      
-             $content = sprintf("%s\n<a href='%s'>点击查看</a>",$obj->text,$obj->url);    
-             break;    
-         case 302000:      
-             $content .= $obj->text;    
-                 
-             $articles = $obj->list;    
-             foreach( $articles as $art )    
-             {    
-                 $content .= sprintf( "<a href='%s'>%s</a>\n",$art->detailurl,$art->article);    
-             }    
-                 
-             break;    
-         case 308000:      
-             $content .= $obj->text.'\n';    
-                 
-             $recips = $obj->list;    
-             foreach( $recips as $recipe )    
-             {    
-                 $content .= sprintf( "<a href='%s'>%s</a>\n",$recipe->detailurl,$recipe->name);    
-             }    
-                 
-             break;    
-     }    
-         
-     return $content;    
- }    
  六. 测试
  上传代码至百度云,关注公众号并测试。
