0
我想爲RESTful API服務創建一個Python API包裝器,並且我正在考慮如何設計它。API客戶端設計,我應該檢查參數嗎?
示例URL請求:這裏
https://www.api.com/collection/resource.json?userid=id&password=pass&command=value
我要盡一切收集模塊和資源,這些模塊的功能,例如是我要如何使用API:
from apiname import collection
# params is a dict of the parameters sent to this resource
params = {
'userid': '123456',
'password': 'pass',
'command': 'value'
}
collection.resource(params)
我的主要問題是關於params
字典傳遞到資源,我應該檢查通過了該資源的參數:
-
如果
- 檢查所需的參數傳遞(也許拋出一個異常,如果不通過)
- 檢查它們的類型(STR,列表,INT,BOOL)
,或者我應該保持它的簡單,使函數發送任何傳遞給資源的東西?
如果我要檢查參數,什麼是推薦的方式做到這一點,我想保持所有存儲每個資源的默認參數,然後我檢查所有傳遞的參數與此默認字典,例如:
# this is the dict holding the info about all the parameters
defaults = {}
defaults['userid'] = {'type': str, 'required': True, 'default': None}
defaults['password'] = {'type': str, 'required': True, 'default': None}
defaults['command'] = {'type': list, 'required': False, 'default': 'some-value'}
那麼應該遵循什麼路徑?
它會增強客戶端開發人員的經驗嗎?通過提供錯誤檢查讓客戶更容易開發使用您的API? – dm03514
@ dm03514是的,但任何建議或例子都歡迎。 – Pierre