在HTML + Javascript网络中启动couchdb DB



我有一个用HTML和JavaScript构建的网站,由Tomcat提供服务。

我需要向其添加一个无SQL数据库,并且正在尝试使用Couch DB。我遇到了麻烦,因为我了解数据库的工作原理,但我不知道如何将其与我的网站连接起来。

我习惯了SQL,我只需要建立连接,然后发送SQL查询。如何将连接对象实例化到 CouchDB,并使用 couchdb.js?目前,Tomcat回答我一个跨域问题,因为Tomcat和couchdb在不同的端口上。

有人可以帮助我解决最基本的问题吗?

跨源资源共享 (CORS) 将仅在下一版本的 CouchDB (v.1.3) 中实现。

这可能令人惊讶,但人们应该意识到它不是CouchDB的"非常基础":

  1. 大多数 CouchApp Web 应用程序开发人员从 CouchDB 本身提供他们的 Ajax 应用程序(使用 HTML 显示、列表和附加的静态页面)。
  2. 一些开发人员使用 CouchDB 作为 3 层架构中的简单数据库。
  3. 其他人从桌面或签名应用程序(Java,Flash等)向CouchDB发送请求。

因此,从从外部站点检索的代码发送 Ajax 查询的情况相对较少。

我推荐的建议是采用最常见的设置之一。

如果它绝对不适合您的情况,那么您可以测试 CouchDB 的开发版本,或使用代理,以便 CouchDB 看起来与您的 HTML 代码位于同一服务器上(直到下一个版本)。

首先,你需要熟悉 curl,然后开始通过命令行测试 couchdb。在安装 couchdb 的同一台计算机上尝试。

$ curl localhost:5984

之后,尝试使用 curl 从另一台机器访问:

$ curl http://<your_couchdb_server_name_or_ip>:5984/

如果不能,则需要检查服务器是否有防火墙阻止对 5984 端口上的服务器的外部请求。

现在,要从 ajax 请求访问 couchdb,您必须配置本地.ini文件:

[httpd]
enable_cors:true;
[cors]
credentials:true;
mehods:PUT,GET,POST,DELETE,OPTIONS;
origins:*;

重新启动您的 couchdb 并重试,这必须解决您的问题。

最新更新