1. Go to this page and download the library: Download jundayw/laravel-oauth library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
jundayw / laravel-oauth example snippets
use App\Models\OAuthToken;
use Jundayw\LaravelOAuth\OAuth;
/**
* 引导应用程序服务。
*
* @return void
*/
public function boot()
{
OAuth::oAuthTokenModelUsing(OAuthToken::class);
}
use App\Models\RefreshToken;
use Jundayw\LaravelOAuth\OAuth;
/**
* 引导应用程序服务。
*
* @return void
*/
public function boot()
{
OAuth::refreshTokenModelUsing(RefreshToken::class);
}
use Jundayw\LaravelOAuth\Contracts\HasAccessTokensContract;
use Jundayw\LaravelOAuth\HasAccessTokens;
use Laravel\Sanctum\HasApiTokens;
class User extends Authenticatable implements HasAccessTokensContract
{
use HasApiTokens, HasAccessTokens {
HasAccessTokens::currentAccessToken insteadof HasApiTokens;
HasAccessTokens::withAccessToken insteadof HasApiTokens;
HasAccessTokens::createToken insteadof HasApiTokens;
HasAccessTokens::tokens insteadof HasApiTokens;
HasAccessTokens::tokenCan insteadof HasApiTokens;
}
}
use Jundayw\LaravelOAuth\Contracts\HasAccessTokensContract;
use Jundayw\LaravelOAuth\HasAccessTokens;
class User extends Authenticatable implements HasAccessTokensContract
{
use HasAccessTokens;
}
use Jundayw\LaravelOAuth\Contracts\HasAccessTokensContract;
use Jundayw\LaravelOAuth\HasAccessTokens;
class User extends Authenticatable implements HasAccessTokensContract
{
use HasAccessTokens;
}
use Illuminate\Http\Request;
use Jundayw\LaravelOAuth\RefreshToken;
Route::post('/tokens/refresh', function(Request $request, RefreshToken $refreshToken) {
return $refreshToken->refreshToken($refreshToken->findTokenByRequest($request))->toArray();
});
Route::get('/orders', function() {
// Token has both "check-status" and "place-orders" abilities...
})->middleware(['auth:client', 'scopes:check-status,place-orders']);
Route::get('/orders', function() {
// Token has the "check-status" or "place-orders" ability...
})->middleware(['auth:client', 'scope:check-status,place-orders']);
use Illuminate\Http\Request;
Route::middleware(['api', 'auth:client'])->get('/user', function(Request $request) {
return $request->user();
});
use Jundayw\LaravelOAuth\Contracts\HasAccessTokensContract;
use Jundayw\LaravelOAuth\HasAccessTokens;
class User extends Authenticatable implements HasAccessTokensContract
{
use HasAccessTokens;
}
use Jundayw\LaravelOAuth\Contracts\HasAccessTokensContract;
use Jundayw\LaravelOAuth\HasAccessTokens;
class Manager extends Authenticatable implements HasAccessTokensContract
{
use HasAccessTokens;
}