第一次寫,有錯(cuò)誤可以留言哦 [ 微笑 ] ,希望可以幫助有需要的人~~
首先說一下我使用Laravel的版本為5.5
1.準(zhǔn)備App Key,App Secret
使用之前首先要在微博開發(fā)平臺里創(chuàng)建一個(gè)網(wǎng)站應(yīng)用,這個(gè)應(yīng)用就會生成App Key,App Secret兩個(gè)值。后續(xù)在代碼中使用。
微博開發(fā)平臺地址:微博開發(fā)平臺
創(chuàng)建成功進(jìn)入應(yīng)用就是下面這個(gè)樣子:

image
基本信息中填寫信息。
在高級信息中還需要填寫項(xiàng)目的回調(diào)地址。
2.安裝
在window終端進(jìn)入項(xiàng)目的根目錄輸入以下命令:
composer require socialiteproviders/weibo
(下載后一般路徑都在 vendor/socialiteproviders/ )
3.添加 Service Provider
文件 config/app.php
如果之前添加過Socialite Provider需要先注釋掉
然后添加圖中那句:
SocialiteProviders\Manager\ServiceProvider::class,

image
4. 添加 Facades Aliase
還是文件 config/app.php
添加:SocialiteProviders\Manager\ServiceProvider::class,

image
5.添加事件處理
在 app/Providers/EventServiceProvider.php這個(gè)文件

image
'SocialiteProviders\Manager\SocialiteWasCalled' => [
'SocialiteProviders\Weibo\WeiboExtendSocialite@handle',
],
6. 配置文件 config/services.php 和 .env
下面的內(nèi)容添加在 config/services.php 文件中:
// 微博
'weibo' => [
'client_id' => env('WEIBO_KEY'),
'client_secret' => env('WEIBO_SECRET'),
'redirect' => env('WEIBO_REDIRECT_URI'),
],
下面的內(nèi)容添加到 .env 配置文件中:
WEIBO_KEY= //微博平臺生成的
WEIBO_SECRET= //微博平臺生成的
WEIBO_REDIRECT_URI=http://xxxxx/auth/callback //重定向地址
7.添加路由
Route::get('weibo', 'Auth\AuthController@weibo'); //引導(dǎo)用戶到微博授權(quán)頁面
Route::get('auth/callback', 'Auth\AuthController@callback'); //新浪微博授權(quán)成功后的回調(diào)頁面
8.代碼實(shí)現(xiàn)
文件 app/Http/Controllers/Auth/AuthController.php
public function weibo() {
return \Socialite::with('weibo')->redirect();
// return \Socialite::with('weibo')->scopes(array('email'))->redirect();
}
public function callback(Request $request) {
$oauthUser = \Socialite::with('weibo')->user();
var_dump($oauthUser->getId());
var_dump($oauthUser->getNickname());
var_dump($oauthUser->getName());
var_dump($oauthUser->getEmail());
var_dump($oauthUser->getAvatar());
return redirect('/');
}
最后:
如有錯(cuò)誤,還望指正。