我正在用CouchDB作爲數據庫在express.js框架上構建一個Node.js應用程序。我正在利用CouchDB的會話api來維護會話狀態,以及用於不同數據段的各種數據庫。CouchDB響應失敗的所有方式是什麼?
基本上,我的應用程序代碼向Couch發出請求,然後如果發生錯誤(使用Node),我可以通過記錄錯誤並重定向到404頁面或類似的東西來適當地作出響應。但是,如果我得到一個CouchDB錯誤,Node不會認爲它是一個錯誤,它會考慮這些數據。現在,只要CouchDB的只能返回該格式與我完全罰款:
{
"error": "illegal_database_name",
"reason": "Only lowercase characters (a-z), digits (0-9), and any of the characters _, $, (,), +, -, and/are allowed. Must begin with a letter."
}
一個JSON文檔具有兩個屬性,錯誤和原因。沒關係,我可以解析它並返回相應的消息;實際上非常優雅。
但是!是我可以從CouchDB期望的所有東西,還是有另一種方式Couch可能會失敗,這將不會產生具有這兩個字段(屬性)的JSON文檔?
爲什麼不像以前的答案一樣使用nano?甚至可能閱讀源代碼? :)相關代碼行https://github.com/dscape/nano/blob/master/nano.js#L280 – dscape
我可能。通讀一些源代碼,看起來不錯!現在閱讀有關Web應用程序安全性的書籍。真的很有趣的東西。儘管如此,我認爲我已經掌握了一些。納米從安全角度來看如何? – Costa