thinkphp6使用EasyWeChat5.x公众号开发(二)

上文thinkphp6使用EasyWeChat5.x(一)说到如何安装。

接下来就是正式使用了,不过正式使用前,需要配置与微信交互的服务器地址(下面讲的URL),然后与微信进行身份验证,验证通过后就可以正式使用了!

开启调试

下载好tp6后会有一个.example.env文件

更名为.env文件

一些基本的连接数据库操作就不演示了

笔者默认你明白如何配置

如下:

申请测试微信公众号

地址移步:申请测试微信公众号

为什么要申请测试微信公众号?

因为公众号开发是需要微信给予权限的

很多高级功能,例如:创建个性化菜单,自定义菜单,模板消息推送等都要求是服务号才可以使用。但对于笔者这种个人开发者而言,成为服务号要给微信交每年300元的毛爷爷,未免有些肉疼。

测试微信公众号具备公众号的所有权限,已足够我们使用了

进去扫码之后

你会得到微信分配给你的appID、appsecret、微信公众号原始id:gh_73758e99c95d

其中URL、Token、域名等是需要你自行设置的。

最终结果,请看如下:

  拥有的权限:

最后 

再次补充说明:URL是你利用thinkphp编写的一个接口地址,填写的时候不能带有任何参数,只能是类似于    https://www.baidu.com/baidu/index/index   这种格式的接口地址

进入到你的URL所在的控制器中进行编码,如下:

示例代码: 

/*
        在做微信开发之前要验证自己开发者身份,微信开发团队给了一个认证环节即:
            1)将token、timestamp、nonce三个参数进行字典序排序 
            2)将三个参数字符串拼接成一个字符串进行sha1加密
            3)开发者获得加密后的字符串可与signature对比,标识该请求来源于微信;这三个请求;其实很简单,查看微信公众开发文档,里面也有源代码,
        微信文档:https://developers.weixin.qq.com/doc/offiaccount/Basic_Information/Access_Overview.html
        下面我们上代码:
    */
    public function verify()
    {
        //Log::write( input(),'wx');
        $timestamp = $_GET['timestamp'];
        $nonce     = $_GET['nonce'];
        $signature = $_GET['signature'];
        $token     = 'anbin'; //微信公众号后台定义的token令牌
        $array     = [$timestamp, $nonce, $token];
        sort($array);  //进行字典排序
        //将排序后的三个参数拼接之后参数拼接之后进行sha1加密
        $tmpstr    = sha1(implode('', $array));
        //将加密后的字符串与signature进行对比;
        if ($tmpstr == $signature && isset($_GET['echostr'])) {
            echo $_GET['echostr'];
            exit;
        }
        //验证通过后执行的业务代码
        return $this->responseMsg();
    }

猜你喜欢

转载自blog.csdn.net/MrWangisgoodboy/article/details/129930437