进阶学习3分钟看懂如何对微信公众号进行服务器配置
白羽 2018-06-12 来源 :网络 阅读 964 评论 0

摘要:本文将带你看懂如何对微信公众号进行服务器配置,希望本文对大家学微信有所帮助。




前期准备工作:

· 首先我们需要一个属于自己的公众号,如果没有的话就在这里申请一个测试帐号,具体怎么申请就问百度吧~

· 必须要有一台自己的公网服务器,以供微信服务器访问,如果没有可以去租一台云服务器,不贵几十块钱一个月

· 搭建自己的服务器环境,我的环境是(linux+nginx+php+mysql),具体怎么搭建百度一堆,

部署验证代码:

代码需要能正确响应微信发送的Token验证,我们可以百度别人的验证代码,也可以直接使用微信提供的验证事例代码,在这里

下载完成后,放在我们的WEB服务器下, 能访问就可以了,我的代码如下:

[php] view plain copy print?
1. <?php  
2. /** 
3.   * wechat php test 
4.   */  
5.   
6. //define your token  
7. define("TOKEN", "weixin");  
8. $wechatObj = new wechatCallbackapiTest();  
9. if (isset($_GET['echostr'])) {  
10.     $wechatObj->valid();  
11. }else{  
12.     $wechatObj->responseMsg();  
13. }  
14.   
15. class wechatCallbackapiTest  
16. {  
17.     public function valid()  
18.     {  
19.         $echoStr = $_GET["echostr"];  
20.   
21.         //valid signature , option  
22.         if($this->checkSignature()){  
23.             echo $echoStr;  
24.             exit;  
25.         }  
26.     }  
27.   
28.     public function responseMsg()  
29.     {  
30.         //get post data, May be due to the different environments  
31.         $postStr = $GLOBALS["HTTP_RAW_POST_DATA"];  
32.           
33.         //extract post data  
34.         if (!empty($postStr)){  
35.                   
36.                 $postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);  
37.                 $fromUsername = $postObj->FromUserName;  
38.                 $toUsername = $postObj->ToUserName;  
39.                 $keyword = trim($postObj->Content);  
40.                 $time = time();  
41.                 $textTpl = "<xml>  
42.                             <ToUserName><![CDATA[%s]]></ToUserName>  
43.                             <FromUserName><![CDATA[%s]]></FromUserName>  
44.                             <CreateTime>%s</CreateTime>  
45.                             <MsgType><![CDATA[%s]]></MsgType>  
46.                             <Content><![CDATA[%s]]></Content>  
47.                             <FuncFlag>0</FuncFlag>  
48.                             </xml>";               
49.                 if(!empty( $keyword ))  
50.                 {  
51.                     $msgType = "text";  
52.                     $contentStr = "Welcome to wechat world!";  
53.                     $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr);  
54.                     echo $resultStr;  
55.                 }else{  
56.                     echo "Input something...";  
57.                 }  
58.   
59.         }else {  
60.             echo "";  
61.             exit;  
62.         }  
63.     }  
64.           
65.     private function checkSignature()  
66.     {  
67.         $signature = $_GET["signature"];  
68.         $timestamp = $_GET["timestamp"];  
69.         $nonce = $_GET["nonce"];      
70.                   
71.         $token = TOKEN;  
72.         $tmpArr = array($token, $timestamp, $nonce);  
73.         sort($tmpArr);  
74.         $tmpStr = implode( $tmpArr );  
75.         $tmpStr = sha1( $tmpStr );  
76.           
77.         if( $tmpStr == $signature ){  
78.             return true;  
79.         }else{  
80.             return false;  
81.         }  
82.     }  
83. }  
84.   
85. ?>

这里要注意:代码中的TOKEN必须要跟下图接口信息配置中的TOKEN值要一样,不样是验证不成功的

接口信息配置:

 

 进阶学习3分钟看懂如何对微信公众号进行服务器配置

所有配置工作都已经完成了,但是别忘了点击启用服务器配置(我开始就忘了,所有一直不成功)

 

 进阶学习3分钟看懂如何对微信公众号进行服务器配置

一切准备就绪,就来试试吧~

 进阶学习3分钟看懂如何对微信公众号进行服务器配置

验证成功啦,而且还能回复消息~

 


本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标移动开发之微信频道!


本文由 @白羽 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程