一張圖看懂laravel的API(passport)工做流程

圖片描述

這裏以oauth的密碼認證方式舉例laravel

首先是一個登陸的過程json

  • A.B.用戶訪問客戶端api

  • C.經過POST方法,發送用戶名和密碼到認證服務器服務器

  • D.同時,認證服務器使用已設定的client_idclient_secret,以及grant_type='password'結合用戶提交過來的用戶名密碼進行認證app

  • E.驗證經過後,認證服務器給客戶端返回帶有 token_type expires_in access_token refresh_token 的數據;不經過會返回錯誤信息。spa

接下來是訪問資源的過程code

資源服務器上的某些資源是須要用戶驗證才能夠訪問的,在laravel中通常經過中間件auth:api來保護這些資源。當已獲取access_token的用戶須要訪問這些資源,則須要進行下面的操做。中間件

  • F.用戶可經過任意方法請求資源服務器,但在請求的同時,須要在headers中帶上這些信息:Accept:application/json,Authorization:Bearer +access_token。注意!Beareraccess_token之間有個空格。blog

  • G.認證經過,服務器返回相應的數據;認證不經過,服務器返回錯誤信息token

相關文章
相關標籤/搜索