IM 使用 Laravel 7 和 IM 使用入口和策略 我調用了 API 控制器,并且我有Journal_entries_controllerindex functionpublic function index(){ $journal_entries = Journal_entry::with('get_journal_entry_lines')->get(); return response()->json($journal_entries,200);}像這樣一切都很好. 為了檢查門,我這樣做了..public function index(){ $auth = auth('api')->user(); if(!Gate::allows('journal_entries.view',$auth)) return 'not auth'; $journal_entries = Journal_entry::with('get_journal_entry_lines')->get(); return response()->json($journal_entries,200);}像這樣,我沒有得到身份驗證,代碼停在那里 如果我 dd($auth) 我會像這樣對待登錄的用戶.public function index(){ $auth = auth('api')->user(); dd($auth);}這里的任何幫助,謝謝..
1 回答

拉風的咖菲貓
TA貢獻1995條經驗 獲得超2個贊
在 if 語句中:
if(!Gate::allows('journal_entries.view',$auth)) return 'not auth';
通過添加我們做出響應來返回,這就是代碼返回的原因。Gate::allows
false
!
true
not auth
首先要做的是確保 是 中的門。journal_entries.view
App\Providers\AuthServiceProvider
如果它是一個有效的門,請發布門的內容,以便我們知道預期的功能。
同時,您可能想嘗試更改為或if(!Gate::allows('journal_entries.view',$auth))
if(Gate::denies('journal_entries.view',$auth))
if(Gate::allows('journal_entries.view',$auth))
門的文檔可以在這里找到 https://laravel.com/docs/7.x/authorization#authorizing-actions-via-gates
- 1 回答
- 0 關注
- 145 瀏覽
添加回答
舉報
0/150
提交
取消