您现在的位置:首页 >> PHP >> 内容

微信开发平台开发小试

时间:2013-11-3 14:35:16 点击:

  核心提示:微信和随之微信产生的开放平台最近着实火了一下。一直想做个微信的平台试试,最近有了个好点子,想尽快把它实现出来,好在微信不需要什么UI等等的设计,只需要把逻辑展现出来即可了。其实微信公众平台如果只是作为...
微信和随之微信产生的开放平台最近着实火了一下。一直想做个微信的平台试试,最近有了个好点子,想尽快把它实现出来,好在微信不需要什么UI等等的设计,只需要把逻辑展现出来即可了。其实微信公众平台如果只是作为一个发布信息的平台的话,也就是“编辑模式”下其实是无需敲代码的。只是在开发者模式下需要开发者去设计一定的逻辑和代码去实现特定的功能,接下来就说下开发的起步:
 
1.开发微信公众平台首先要有服务器资源,当然那种编辑模式的不算。所谓的编辑模式就是那种单纯的每天推送一条消息的公众账号。服务器资源各种云各种服务器都是可以的,推荐BAE/SAE/坚果/阿里等等的一种,各有好处,而且由于竞争的缘故?都会有部分免费的资源相送,拿来练练手就足够的了。
 
a.申请BAE账号,创建应用,如果是测试的话去微信公众平台的主页下载测试的PHP代码,只需将其中的TOKEN修改成自己的TOKEN即可。例如下面的PHP测试代码,代码的逻辑很清晰,即一个验证过程,也能定义一部分的逻辑操作。上传这个文件并且创建自己应用的版本1:
 
 
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
<?php 
/**
  * wechat php test
  */ 
   
//define your token 
define("TOKEN", "weixin");//此时你的微信公众平台的token即为weixin 
$wechatObj = new wechatCallbackapiTest(); 
$wechatObj->valid(); 
   
class wechatCallbackapiTest 
    public function valid() 
    
        $echoStr = $_GET["echostr"]; 
   
        //valid signature , option 
        if($this->checkSignature()){ 
            echo $echoStr
            exit
        
    
   
    public function responseMsg() 
    
        //get post data, May be due to the different environments 
        $postStr = $GLOBALS["HTTP_RAW_POST_DATA"]; 
   
        //extract post data 
        if (!empty($postStr)){ 
                   
                $postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA); 
                $fromUsername = $postObj->FromUserName; 
                $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>";              
                if(!empty( $keyword )) 
                
                    $msgType = "text"
                    $contentStr = "Welcome to wechat world!"
                    $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr); 
                    echo $resultStr
                }else
                    echo "Input something..."
                
   
        }else
            echo ""
            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; 
        
    

 

?>  
创建新版本成功后如图所示,此时应用创建成功:

作者:不详 来源:网络
共有评论 0相关评论
发表我的评论
  • 大名:
  • 内容:
  • 青春网络编程技术(www.qcfupo.com) © 2020 版权所有 All Rights Reserved.
  • Powered by qcfupo! V3.0sp1
  • 百度友情链接: 百家乐[www.chinawestnews.net/aomenbaijiale/] 赌博网[www.chinawestnews.net/amdbwz/] 海立方[www.bjl.gov.cn/bjgylc/] 娱乐城[www.gtxrmzf.gov.cn/mapai/] 娱乐城[www.hfsf.gov.cn/yfgj/] 威尼斯人[www.hllinkou.gov.cn/baijile/] 澳门威尼斯[www.jjwgj.gov.cn/wnsr/] 888真人[www.lagm.gov.cn/888zhenren/] 百乐坊[www.laoling.gov.cn/blfylc/] 现金网[www.longyu.gov.cn/xjw/] 百家乐[www.chinawestnews.net/ambjl/] 新葡京娱乐场[www.sjzedu.gov.cn/jsylc/] 时时彩[www.snjw.gov.cn/ssc/] 赌博[www.chinawestnews.net/aomendubo/]