阅读(4733) (10)

Laravel 8 批准请求

2021-07-09 11:44:51 更新

当接收到授权请求时,Passport 会自动向用户显示一个模版页面,允许用户批准或拒绝授权请求。如果用户批准请求,他们会被重定向回接入的应用程序指定的 redirect_uriredirect_uri 必须和客户端创建时指定的 redirect 链接完全一致。

如果你想要自定义授权通过界面, 可以使用 Artisan 命令 vendor:publish 发布 Passport 的视图模板。发布的视图位于 resources/views/vendor/passport

php artisan vendor:publish --tag=passport-views 

有时候你可能希望跳过授权提示页面, 例如授权第一方客户端时。你可以通过在 客户端模型 上定义 skipsAuthorization 方法来实现此目的。 如果 skipsAuthorization 返回 true,客户端将被批准,用户将被立即重定向回 redirect_uri

<?php

namespace App\Models\Passport;

use Laravel\Passport\Client as BaseClient;

class Client extends BaseClient
{
    /**
     * 确定客户端是否应跳过授权提示
     *
     * @return bool
     */
    public function skipsAuthorization()
    {
        return $this->firstParty();
    }
}