[英]RESTful API Endpoints for Phone Authentication
這個問題可能更適合代碼審查 - 如果是這樣,請告訴我,我會遷移它。
考慮以下應用程序登錄流程(與 WhatsApp 類似/相同):
這可以分為三個動作; 請求、重新發送、驗證。
此外,每個端點都在后端創建資源,因此每個端點都應該使用POST
方法。
一種非RESTful 方法將類似於以下內容:
POST /auth/request
POST /auth/resend
POST /auth/verify
為了使這成為真正的 RESTful,我需要廢棄動詞(請求、重新發送、驗證)並在適當的地方替換為資源名稱(名詞)。
例如:
POST /auth/requests
POST /auth/resends
POST /auth/verifications
我完全理解這可能有點主觀,但上面似乎是錯誤的......相反,我想出了以下內容:
POST /auth/requests
PUT /auth/requests
-不確定這個...POST /auth
我真的很難想出更合適的資源名稱/端點,有人能想到更好的選擇嗎?
為了使這成為真正的 RESTful,我需要廢棄動詞(請求、重新發送、驗證)並在適當的地方替換為資源名稱(名詞)。
REST 對 URI 設計沒有任何意見(除了 URI 與RFC 3986一致的廣泛要求)。 這是重點的一部分——通用組件將 URI 理解為不透明的標記。
/a81a8d0e-ffd0-4758-8cc8-f4c2784a95ae
是一個完美的 REST-"ful" URI。
設計 URI 類似於選擇變量名,考慮大致相同,並且適當的權限是您的本地樣式指南。
“名詞”並非來自我們是 RESTful 的事實,而是來自我們用來導航域應用程序協議的文檔(資源)的名稱。 首先獲取正確的資源,然后選擇匹配的標識符。
一個有用的啟發式方法是考慮如何將協議實現為 web 站點 - 單擊此鏈接以加載該表單,提交表單,獲取帶有鏈接的 email,加載鏈接,提交該表單等。流,然后考慮如何使其機器可讀。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.