[英]REST API Filters for 'self'
我有許多最終用戶和管理人員都可以雙重使用的API。 我將使用首選項並給出兩個示例:
顯然,這導致了重復。 當然,對於最終用戶和管理員,我只能使用'/ users / {user} / preferences',但是最后我遇到了其他問題:
1)此人需要在每次通話中輸入用戶ID,這很麻煩。
2)現在,安全性將成為一個問題,因為后端需要確保正確處理每個請求,即,惡意人員無法輸入他人的ID並檢索其首選項。
在這里遵循的最佳模式是什么?
一種選擇是使/user/preferences
為管理員調用采用可選的?userid=
參數。 然后,您可以基於admin == true && args[userid]
使用相同的端點和分支。
在不太具體的調用( /user/preferences
)調用更具體的端點( /user/{userid}/preferences
)的情況下,對代理api端點的注釋也很好。
都是不錯的選擇。 很多人將所有admin調用放在/admin/...
並添加一個處理程序以確認呼叫者實際上是admin,然后再路由到常規調用( /admin/users/preferences
>驗證is_admin-> /users/preferences?userid=bob
)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.