laravel配置微信服务器详细步骤

基本信息

  • laravel5.4
  • 西部数码云服务器
  • 微信开放平台测试号

laravel开发重要的是路由,请求的大多数是POST和GET,在微信开发中需要注意的是:微信验证token的请求是GET方式,但是真正介入微信服务器采用的是POST方式,所以微信后台配置验证接口时候,要使用GET方式,验证成功配置完成再改成POST方式。

路由:
Route::group(['prefix' => 'backed', 'namespace' => 'Backeds'], function () {
    Route::get('weixin/token', 'WeixinController@token');
    Route::post('weixin/token', 'WeixinController@token');
    Route::any('weixin/api', 'WeixinController@api');//下面有具体方法代码
});

laravel中还有一个需要注意的是中间件的概念,中间件是所有请求都需要经过验证才能分发给相应的控制器的玩意.laravel中POST提交都必须包含csrf防止跨域攻击的,在微信开发接口中需要关闭:
打开:app\Http\Middleware\VerifyCsrfToken.php

<?php

namespace App\Http\Middleware;

use Illuminate\Foundation\Http\Middleware\VerifyCsrfToken as BaseVerifier;

class VerifyCsrfToken extends BaseVerifier
{
    /**
     * The URIs that should be excluded from CSRF verification.
     *
     * @var array
     */
    protected $except = [
        'weixin/api',
    ];
}

接下来在对应的Controller中创建WeixinController.php

php artisan make:controller WeixinController
<?php

namespace App\Http\Controllers\Backeds;
use DB;
use App\Http\Requests;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;

class WeixinController extends Controller
{

     //验证消息
    public function api()
     {
         $echoStr = $_GET["echostr"];
         if($this->checkSignature()){
             echo $echoStr;
             exit;
         }
     }
     //检查签名
     private function checkSignature()
     {
         $signature = $_GET["signature"];
         $timestamp = $_GET["timestamp"];
         $nonce = $_GET["nonce"];
         $token = "weixin";//可以随便填,只要和后台添加的一样就行
         $tmpArr = array($token, $timestamp, $nonce);
         sort($tmpArr, SORT_STRING);
         $tmpStr = implode($tmpArr);
         $tmpStr = sha1($tmpStr);
         if($tmpStr == $signature){
             return true;

         }else{
             return false;
         }
     }
}

到此为止,打开微信公众号后台,开始配置微信服务器

配置URL:http://wechat.xhqlzj.com/backed/weixin/api
配置Token:weixin(Token要和WeixinController中checkSignature方法里面定义的token一样)

4424012-d584fbf12fa4024b.png
搞定


接下来会有详细的微信开发文章,欢迎关注。获取更多的相关资料可以关注公众号


4424012-311011dcf0d431a0.jpg
回复“资源”有惊喜
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值