zoukankan      html  css  js  c++  java
  • 【转】微信公众开发URL和token填写详解

    很多人不明白微信公众号开发者中心服务器配置里面的url和token是什么,不会填写。看了教程也不理解是什么,本文详述一下这个问题。

    第一步:作为一名微信公众号开发者,别人进入你的微信公众号,肯定会看见某些网页,或者给你发某些信息,你需要实时自动回复,所以你需要一个24小时为用户服务的服务器。我们所要填写的url就是你提供的服务器的地址,前提是这个服务器的地址你要能够访问,且能够控制。而token是用来验证的。

    第二步:然后你需要一个服务器,服务器可以自己购买,也能用新浪sae,百度bae。方法是进入其开发者中心,注册一个开发者账号。并进行实名认证!(没有进行实名认证的小伙伴们是无法成功的)

    第三步:注册完毕后,我们进入控制台创建一个新应用。

    第四步:创建完应用之后我们进入左侧代码管理,提示我们创建一个新版本,点击确定创建一个新版本。然后选择第一张图中的编辑代码选项。弹出第二张图,双击index.php编辑本页代码。

    第五步:将下面的代码加标点复制进去。将define("TOKEN", "weixin")这句话中的weixin改成你自己的token,例如zijidetoken;然后点击右上角的全部保存。

    <?php
    /**
      * wechat php test
      */
    //define your token
    define("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;
    }
    }
    }
    ?>
    

     第六步:按照第一幅图中又键点击index.php文件,选择通过URL访问得到第二幅图,复制地址栏的网址,这就是你微信开发需要填写的url,而你需要填写的token就是你上一步骤自己修改后的token。

     第七步:填写完毕,提交成功。好了,你可以开始你的微信公众开发了。

    第八步:总结1.开发者一定要实名认证后才行,不然会提示验证token失败。2.微信开发需要php知识。

    本文来自百度,我只是一个搬运工!

  • 相关阅读:
    JS加密对应的c#解码
    Content-Type: application/www-form-urlencoded
    使用abcpdf分页设置的问题
    Windows10远程报错:由于CredSSP加密Oracle修正
    ueditorUE 去掉本地保存成功的提示框!
    js进制转换
    缓存穿透 缓存雪崩 缓存击穿
    DTcms 模版用vs2015或2017 打开编辑时候 粘贴出问题 代码被调整
    通俗简述 依赖倒置?控制反转?依赖注入?面向接口编程 的思想
    tcp/ip
  • 原文地址:https://www.cnblogs.com/wangyayun/p/6781234.html
Copyright ? 2011-2022 开发猿


http://www.vxiaotou.com