我正在以 CouchDB 作为数据库的 express.js 框架上构建一个 Node.js 应用程序。我正在使用 CouchDB 的会话 api 来维护会话状态,以及用于不同数据部分的各种数据库。
基本上在每个请求中,我的应用程序代码都会向 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 文档?