我在寫這個偉大的應用程序。這是我第一次嘗試編寫完整的AJAX應用程序,它只在另一面使用了Restful商店。nodejs中的服務器端存儲(要在Dojo中使用)
現在...我寫了一些代碼,到目前爲止,我只需要使用GET進行簡單的查詢。但是,爲了保持一切整潔,我確信,我有一個「協議」到位:每個請求曾在格式的響應:
{↵ "ack": "ERROR", "message": "required filter not passed",↵ "errors": { "name": "parameter required"↵ } }
如果有錯誤(在這種情況下,我要求用戶設置一個過濾器)。
現在...如果GET 不的工作,我也有一個「數據」字段,這樣的結果是這樣的:
{↵ "ack": "OK", "data": { ... } }
現在我有道場的問題,因爲例如dgrid需要返回對象的「根」(也就是說)數據,而不是「數據」鍵。
可能的解決方案:
1)破解我JsonRest文件(它已經有點不同,我加了超時等,它意味着是畢竟是一個樣板),因此,對於「查詢」,它實際上操縱與結果然後(),並返回原始數據
2)改變我的協議,因此,如果HTTP狀態爲200,因爲沒有錯誤消息或任何給出,它簡單地返回數據
3)以某種方式說服所有的小部件在查詢後返回的JSON的「數據」部分中使用東西(這似乎是高度不太可能)。
我該走哪條路?一方面,我喜歡這個協議始終遵循相同的格式(儘管我承認它沒用)。另一方面,改變JsonRest似乎很容易。但話又說回來,第三方的API可能不喜歡不必從返回對象的「數據」鍵撈出數據...
什麼是理智的事情來這裏做什麼?
謝謝!
Merc。
接受答案 - 謝謝摩根。其實,我結束了去(1),因爲它只是讓很多具有相同的協議,每一次感覺... – Merc