2015-12-21 47 views
0

我想知道,如何在服務器端的REST API中爲'get'實現'字段'參數。如何在服務器端的REST API中爲'get'實現'字段'參數

爲如:http://example.com/user?fields=firstName,lastName

在這裏,我必須來獲取用戶的表名字和姓氏。

我應該如何命名錶字段,如firstName,lastName,並選擇字段列表中的所有列或使用別名,並從別名中找到列名並選擇它們?

我也有一些安全的字段,如passwordHash,不應該被要求。所以我也需要設置一些限制。所以在服務器端我必須手動檢查這些字段(也是*或用戶。*等)。但是這些字段應該允許更新。

任何人都可以告訴我在安全性,性能和乾淨的代碼方面實現這個最好的方法嗎?

回答

1

猜測你有一個通常的web應用程序,你可以使用一個沒有任何查詢參數的請求來顯示/隱藏客戶端的列。您可能會在第一次請求時返回太多數據,但您不需要額外的請求,因爲所有數據都已經存在。

編輯:當然,你不應該在你的查詢中包含「passwordHash」或其他合理的數據。

+0

您絕對不應該將安全字段像「passwordHash」暴露給REST API。我同意@ enigma969不需要'fields'查詢參數。如果你的字段數據量很大,而且你不想每次請求獲取它,只需使用'/ user/{id}/field_with_large_amount_of_data'或'/ large_user_data_field/{userId}'這樣的單獨路徑' – Zuker

+0

如果我有100列,每列包含中等大小的數據? – Harikrishnan