Discuz教程网

微信公众平台消息接口开发教程(一)启用接口

[复制链接]
authicon dly 发表于 2013-2-20 21:12:09 | 显示全部楼层 |阅读模式
微信 平台 消息 接口 启用
作者:http://txw1958.cnblogs.com/

本系统教程以微信公众平台应用天气神(账号WeatherGod,支持国内近2500个县市区天气查询)为例,讲解微信接口开发过程。欢迎大家关注该账号,二维码见底部图。
使用前提条件:拥有一个公网上的HTTP服务器主机空间,具有创建目录、上传文件等权限。免费的也可以,但须有二级域名。想快速的申请一个免费稳定好用的,可以先使用新浪的SAE。但免费时间有条件限制。

一、注册微信公平平台账号
地址:http://mp.weixin.qq.com/
过程略。

二、上传代码
以下代码是消息接口认证代码,将下列PHP代码保存为index.php(其中的mytoken改为你想要的的token名称),并上传到HTTP服务器指定的目录中,

  1. <?php
  2. /**
  3.   * wechat php test
  4.   */

  5. //define your token
  6. define("TOKEN", "wspd");
  7. $wechatObj = new wechatCallbackapiTest();
  8. $wechatObj->valid();
  9. $wechatObj->responseMsg();
  10. class wechatCallbackapiTest
  11. {
  12.         public function valid()
  13.     {
  14.         $echoStr = $_GET["echostr"];

  15.         //valid signature , option
  16.         if($this->checkSignature()){
  17.                 echo $echoStr;
  18.                 exit;
  19.         }
  20.     }

  21.     public function responseMsg()
  22.     {
  23.                 //get post data, May be due to the different environments
  24.                 $postStr = $GLOBALS["HTTP_RAW_POST_DATA"];

  25.               //extract post data
  26.                 if (!empty($postStr)){
  27.                
  28.                       $postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
  29.                 $fromUsername = $postObj->FromUserName;
  30.                 $toUsername = $postObj->ToUserName;
  31.                 $keyword = trim($postObj->Content);
  32.                 $time = time();
  33.                 $textTpl = "<xml>
  34.                                                         <ToUserName><![CDATA[%s]]></ToUserName>
  35.                                                         <FromUserName><![CDATA[%s]]></FromUserName>
  36.                                                         <CreateTime>%s</CreateTime>
  37.                                                         <MsgType><![CDATA[%s]]></MsgType>
  38.                                                         <Content><![CDATA[%s]]></Content>
  39.                                                         <FuncFlag>0</FuncFlag>
  40.                                                         </xml>";            
  41.                                 if(!empty( $keyword ))
  42.                 {
  43.                               $msgType = "text";
  44.                         $contentStr = "Welcome to wechat world!";
  45.                         $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr);
  46.                         echo $resultStr;
  47.                 }else{
  48.                         echo "Input something...";
  49.                 }

  50.         }else {
  51.                 echo "";
  52.                 exit;
  53.         }
  54.     }
  55.                
  56.         private function checkSignature()
  57.         {
  58.         $signature = $_GET["signature"];
  59.         $timestamp = $_GET["timestamp"];
  60.         $nonce = $_GET["nonce"];        
  61.                         
  62.                 $token = TOKEN;
  63.                 $tmpArr = array($token, $timestamp, $nonce);
  64.                 sort($tmpArr);
  65.                 $tmpStr = implode( $tmpArr );
  66.                 $tmpStr = sha1( $tmpStr );
  67.                
  68.                 if( $tmpStr == $signature ){
  69.                         return true;
  70.                 }else{
  71.                         return false;
  72.                 }
  73.         }
  74. }

  75. ?>
复制代码


或者直接下载微信的示例代码。地址 http://mp.weixin.qq.com/mpres/htmledition/res/wx_sample.zip

二、启用消息接口
进入微信公众平台,选择 设置 - 关键词自动回复 ,选择启用 ,点击 公众平台消息接口 旁边的 编辑,进入接口配置界面:
按照要求如实填写下列选项。特别注意是URL是你上传index.php的路径,必须以http://开头,且为80端口。
填好后点击提交,这会有下面这些结果
1. 服务器没有响应Token验证
这样回头检查一下各项配置是否正确。如果确定配置没有问题,请按下面的方法检查
2. 请求URL超时
你的服务器在国外,或者服务器网速不给力,一般多试几次就可以了。如果经常这样,就需要考虑更换服务器
3. 提交成功
恭喜你,配置成功了。

三、服务器没有响应Token验证的解决方法

原文地址:http://www.cnblogs.com/txw1958/archive/2013/01/24/weixin-if1-enable.html

关注天气神(账号WeatherGod)方法:
1. 依次进入以下路径:朋友们—>添加朋友—>搜号码,输入WeatherGod,不区分大小写,点击查找,然后点击关注
2. 扫描二维码:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x



上一篇:前台不显示邀请码购买了
下一篇:微信公众平台消息接口开发教程(二)服务器没有正确响应Token验证的解决方法
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

1314学习网 ( 浙ICP备10214163号 )

GMT+8, 2024-5-2 11:19

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表