手把手教你怎么开发微信公众号 微信聊天记录

现在微信越来越热门,大量的公众号涌现,为我们生活带来不少便利。让我们来了解一下这个公众号是怎么出来的。 一.申请域名服务器 以前部署一个网站得准备硬件,申请域名,这对于小型网站来说是难以承受的,随着Amazon云服

现在微信越来越热门,大量的公众号涌现,为我们生活带来不少便利。让我们来了解一下这个公众号是怎么出来的。
一.申请域名服务器
以前部署一个网站得准备硬件,申请域名,这对于小型网站来说是难以承受的,随着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" ;   
       
// 简便get请求    
$json  =  file_get_contents ( $url );   
// json解析    
     $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;   
       
     // tuling api    
     $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 ;   
}   
六. 测试
上传代码至百度云,关注公众号并测试。

已有 人在线留言咨询