我想實現一個不錯的JWT
基於API,所以我已經閱讀文檔的負荷,他們大約JWTs
和如何工作的,但我不能弄清楚一些事情使用JWT:在Laravel
當用戶登錄到應用程序,我是否通過JWT
傳遞用戶詳細信息?例如,名稱,電子郵件和用戶權限。
我是否需要通過智威湯遜傳遞所有內容?例如,從數據庫獲取頁面特定數據或獲取所有博客文章或類似的內容。
如何在後端找到用戶是否有權執行此操作?我如何從令牌獲取用戶詳細信息?
我使用的是在這種情況下Tymon/JWT-Auth library
,這裏是我的應用程序如何在此刻有點示範:
用戶發送POST請求API /認證途徑,它記錄了用戶並返回JWT令牌作爲json以及用戶詳細信息 - 名稱,電子郵件和權限。因此,從服務器返回的數據如下所示:
{
"token": "blablabla",
"user": {
"email": "[email protected]",
"name": "Test User",
"permissions": [ "can_edit_posts", "can_delete_users" ]
}
}
JWT存儲在一個名爲token的全局變量中。用戶數據存儲在用戶對象中。
用戶轉到我們說的博客頁面。該頁面向服務器發送一個GET
請求,該請求檢索所有帖子:/blogs?token=[THAT_GLOBAL_VARIABLE_HERE]
服務器返回所有帖子的列表。 全局令牌變量使用頭中的承載鍵中的任何值進行更新。
這是正確的做法嗎?