//1.新建立2個路由. Route::get('/buy','index\IndexController@buy')->name('buy'); //要訪問的 Route::get('/profit','index\IndexController@profit')->name('profit'); //要跳轉的 //2.建立控制器: public function __construct() { $config = [ 'app_id' => '11111', 'secret' => 'a93ba7629', 'token' => 'psrlJRr3eZrg7ser1GcNTZ11rFSIC1TP', 'response_type' => 'array', 'oauth' => [ 'scopes' => ['snsapi_userinfo'], 'callback' => '/profit', //這個就是告訴授權要跳轉到這個頁面 ], ]; $this->app = \EasyWeChat\Factory::officialAccount($config); } public function buy(Request $request){ if(empty(session('wechat_user'))){ $oauth = $this->app->oauth; session(['target_url'=>'/buy']); return $oauth->redirect(); } $user = session('wechat_user'); //dd($user); $skd = $this->app->jssdk->buildConfig(['updateAppMessageShareData', 'updateTimelineShareData'],$debug = false, $beta = false, $json = true); $url = "box.7wh.com/buy"; $this->app->jssdk->setUrl($url); return view('share',compact('skd','user')); } public function profit(){ $oauth = $this->app->oauth; $user = $oauth->user(); session(['wechat_user'=>$user->toArray()]); $target_url = empty(session('target_url'))?'/':session('target_url'); header('Location:'.$target_url); } //以下為分享示例share.blade.php內容,對應buy方法下的模板 <script src="https://res.wx.qq.com/open/js/jweixin-1.4.0.js" type="text/javascript" charset="utf-8"></script> <script type="text/javascript" charset="utf-8"> wx.config(<?php echo $skd; ?>);// 不用ECHO就會報APPID不合法 wx.ready(function () { //需在用戶可能點擊分享按鈕前就先調用 wx.updateAppMessageShareData({ title: "{{$user['name']}}"+'正在分享', // 分享標題 desc: '這是分享的描述', // 分享描述 link: 'http://box.3wh.com/buy', // 分享鏈接,該鏈接域名或路徑必須與當前頁面對應的公眾號JS安全域名一致 imgUrl: "{{$user['avatar']}}", // 分享圖標 success: function (res) { } }) }); </script>