2010-11-01 11 views
15

Estoy a punto de crear una aplicación web que comparta recursos a través de una API Restful.CouchDB como la capa Restful API?

Me sorprendió que CouchDB ya tenga una buena capa de Restful API.

Entonces, ¿por qué crearía la mía propia?

¿No podría permitir que otras aplicaciones web utilicen mis recursos (documentos json) en CouchDB a través de Restful API directamente en lugar de node.js siendo el intermediario?

¿O necesitaré algo de lógica entre CouchDB y aplicaciones web de terceros?

Todavía no he usado CouchDB, así que no sé si es capaz de gestionar autorizaciones avanzadas y si las aplicaciones "javascript de documentos de diseño" son tan buenas como "node.js javascript".

Respuesta

14

Hay varias razones por las que desea construir su propia capa delgada de entre:

  • recursos no JSON (para el acceso de lectura esto podría ser factible con sofá también)
  • lógica de back-end a medida (es decir, el envío de correos electrónicos, la invocación de controladores internos de la aplicación previa solicitud)
  • autenticación (las opciones de autenticación para Couch se limitan)
  • filtrado del lado del servidor (podría ser más fácil con Node.js que un controlador de actualización en el sofá)
  • de seguridad (¿está dispuesto a ejecutar una instancia sofá que es accesible directamente?)

En cuanto a mí, he construido una API REST usando CouchDB y node.js. Debido al hecho de que ambos usan JSON, la sobrecarga necesaria sigue siendo muy pequeña, pero usted tiene la flexibilidad total de su código de nivel medio 100% propio.

+0

Presa, muy cerca de noquear a toda la grada. Realmente necesito enviar correos electrónicos. Probablemente haya una manera de hacer esto con Couch y SES o algo así. Sería bueno trabajar con una arquitectura de 2 niveles. – Costa