如果你試圖設計一種語言綁定到一個安靜的web api,你會怎麼做?你會考慮什麼?你會首先諮詢哪些資源?你會試圖嘲諷網絡api interlace 1:1,或者你會嘗試使用你的語言習語嗎?你會如何防止過多的HTTP請求?等如何設計一個綁定到web api的語言?
我一直負責創建一個Web API的語言綁定,我從來沒有做過這樣的事情,所以我想我會問,所以我開始之前。
如果你試圖設計一種語言綁定到一個安靜的web api,你會怎麼做?你會考慮什麼?你會首先諮詢哪些資源?你會試圖嘲諷網絡api interlace 1:1,或者你會嘗試使用你的語言習語嗎?你會如何防止過多的HTTP請求?等如何設計一個綁定到web api的語言?
我一直負責創建一個Web API的語言綁定,我從來沒有做過這樣的事情,所以我想我會問,所以我開始之前。
不要嘲笑網絡API接口 - 如果你懶得寫的天然結合,然後據說它是如此的開發人員不需要了解網絡API的成語和範式,而是可以使用API與它們的習慣更相似。因此,請使用該語言的成語。
防止過度的HTTP請求與緩存
如果服務返回的錯誤狀態代碼(400〜599),然後翻譯成原生錯誤狀態 - 例外,錯誤代碼,等等。
確保你通過拋出異常或返回一個錯誤
佔http請求超時或只是普通的舊的連接失敗,再次如果服務有3XX重定向狀態響應,自動跟隨重定向。大多數本地編程範例並不真正支持重定向的概念,因此只需使其工作。
最後,最棘手的部分是範式翻譯,從RESTful到程序。每種情況都不一樣。基本上,你會想要一個類(或對象)每個資源。每個類都將支持delete()和save(),併爲資源的特定方面提供getter和setter。您還需要一種方法來檢查狀態 - 骯髒,保存等
(很抱歉,如果格式化的關在這裏,我在我的iPad上寫這一點,由於某些原因,網站並未」 t顯示編輯工具欄或預覽。)