CouchDB Curl & Futon

cURL实用程序

cURL实用程序是一种与CouchDB通信的方法。它是使用支持的协议(HTTP,HTTPS,FTP,FTPS,TFTP,DICT,TELNET,LDAP或FILE)之一从服务器传输数据的工具。 此命令旨在无需用户交互即可工作。 cURL提供了一个busload的有用的技巧,如代理支持,用户身份验证,ftp上传,HTTP post,SSL(https :)连接,Cookie,文件传输恢复等。cURL实用程序可用于操作系统,如UNIX,Linux,Mac OS X和Windows。 它是一个命令行实用程序,用于直接从命令行访问HTTP协议。

使用cURL实用程序

您可以使用cURL实用程序访问任何网站,只需键入cURL,然后是网站地址,如下所示:

  1. curl www.baidu.cn/

默认情况下,cURL实用程序返回请求的页面的源代码。 它在终端窗口上显示此代码。

cURL实用程序选项

cURL实用程序提供了各种选项来使用,您可以在cURL实用程序帮助中看到它们。下面的代码显示了cURL帮助的一些部分。

  1. $ curl --help

在与CouchDB通信时,cURL实用程序的某些选项被广泛使用。 以下是cURL实用程序的一些重要选项的简要说明,包括CouchDB使用的那些选项 :

-X标志

当与HTTP服务器通信时,-X标志允许指定一个请求方法(GET,POST,PUT等)来覆盖默认方法(GET)。当与FTP服务器通信时,-X标志允许指定FTP命令以覆盖默认命令(LIST)。

-H

此标志指定要传递到服务器的自定义标头。 例如,要将文件发送到服务器,我们必须使用“内容类型”来定义我们要上传的文件的内容类型。

-d标志

使用cURL的此标志,您可以将数据与HTTP POST请求一起发送到服务器,就像它是由用户在表单中填写并提交的一样。

假设有一个网站,你想登录或使用cURL实用程序的-d标志向网站发送一些数据,如下所示。

  1. curl -X PUT http://mywebsite.com/login.html -d userid=001 -d password=tutorialspoint

它发送一个post块,看起来像“userid = 001&password = tutorialspoint”。 同样,您也可以使用-d标志发送文档(JSON)。

-o标志

使用此标志,cURL将请求的输出写入文件。

以下示例显示了cURL实用程序的-o标志的使用。

  1. $ curl -o example.html www.jishuchi.cn/index.htm
  2. % Total % Received % Xferd Average Speed Time Time Time Current
  3. Dload Upload Total Spent Left Speed
  4. 100 81193 0 81193 0 0 48168 0 --:--:-- 0:00:01 --:--:--
  5. 58077

这将获取tutorialspoint.com主页的源代码,创建一个名为example.com的文件,并将输出保存在名为example.html的文件中。以下是example.html的快照。

示例HTML

-O

此标志类似于-o,唯一的区别是使用此标志,具有相同名称的新文件作为请求的URL被创造了,并且请求的URL的源代码将被复制到它。

下面的例子说明了如何使用卷曲实用的-O标志。

  1. $ curl -O www.jishuchi.cn/index.htm
  2. % Total % Received % Xferd Average Speed Time Time Time Current
  3. Dload Upload Total Spent Left
  4. Speed
  5. 100 81285 0 81285 0 0 49794 0 --:--:-- 0:00:01 --:--:--
  6. 60077

它创建一个名为index.htm的新文件,并将tutorialspoint.com的索引页的源代码保存在其中。

你好CouchDB

您可以通过向安装的CouchDB实例发送GET请求来访问CouchDB的主页。 首先,确保您已在您的Linux环境中安装了CouchDB,并且它正在成功运行,然后使用以下语法将get请求发送到CouchDB实例。

  1. curl http://127.0.0.1:5984/

这将为您提供一个JSON文档,如下所示,其中CouchDB指定详细信息,如版本号,供应商名称和软件版本。

  1. $ curl http://127.0.0.1:5984/
  2. {
  3. "couchdb" : "Welcome",
  4. "uuid" : "8f0d59acd0e179f5e9f0075fa1f5e804",
  5. "version" : "1.6.1",
  6. "vendor" : {
  7. "name":"The Apache Software Foundation",
  8. "version":"1.6.1"
  9. }
  10. }

所有数据库列表

您可以通过发送get请求以及字符串“_all_dbs string”来获取创建的所有数据库的列表。 以下是获取CouchDB中所有数据库的列表的语法。

  1. curl -X GET http://127.0.0.1:5984/_all_dbs

它给出了CouchDB中所有数据库的列表,如下所示。

  1. $ curl -X GET http://127.0.0.1:5984/_all_dbs
  2. [ "_replicator" , "_users" ]

创建数据库

您可以使用cURL和PUT标头在CouchDB中创建数据库,使用以下语法:

  1. $ curl -X PUT http://127.0.0.1:5984/ database_name

例如,使用上面给出的语法创建一个名为my_database的数据库,如下所示。

  1. $ curl -X PUT http://127.0.0.1:5984/my_database
  2. {"ok":true}

验证

通过列出所有数据库,验证是否创建数据库,如下所示。 在这里,您可以观察新创建的数据库的名称,“my_database”在列表中。

  1. $ curl -X GET http://127.0.0.1:5984/_all_dbs
  2.  
  3. [ "_replicator " , "_users" , "my_database" ]

获取数据库信息

您可以使用get请求以及数据库名称来获取有关数据库的信息。 以下是获取数据库信息的语法。作为示例,让我们获取名为my_database的数据库的信息,如下所示。 在这里,您可以获取有关数据库的信息作为响应。

  1. $ curl -X GET http://127.0.0.1:5984/my_database
  2.  
  3. {
  4. "db_name" : "my_database",
  5. "doc_count" : 0,
  6. "doc_del_count" : 0,
  7. "update_seq" : 0,
  8. "purge_seq" : 0,
  9. "compact_running" : false,
  10. "disk_size" : 79,
  11. "data_size" : 0,
  12. "instance_start_time" : "1423628520835029",
  13. "disk_format_version" : 6,
  14. "committed_update_seq" : 0
  15. }

Futon

Futon是CouchDB的内置的基于Web的管理界面。 它提供了一个简单的图形界面,您可以使用它与CouchDB进行交互。 它是一个朴素的接口,它提供对所有CouchDB功能的完全访问。 以下是这些功能的列表 -

数据库:

  • 创建数据库。
  • 销毁数据库。

文件:

  • 创建文档。
  • 更新文档。
  • 编辑文档。
  • 删除文档。

启动Futon确保CouchDB正在运行,然后在浏览器中打开以下网址:

  1. http://127.0.0.1:5984/_utils/

如果打开这个网址,它显示被褥主页如下图所示:

被褥首页

在此页面的左侧,您可以观察CouchDB的所有当前数据库的列表。 在此图中,我们有一个名为my_database的数据库,以及系统定义的数据库_replicator和_user。

在右手边你可以看到以下 :

工具 - 在本部分中,您可以找到配置以配置CouchDB,复制器执行复制和状态以验证CouchDB的状态和最近在CouchDB上执行的修改。

文档 - 本节包含最新版本的CouchDB的完整文档。

诊断 - 在此您可以验证CouchDB的安装。

最近的数据库 - 在这里,你可以找到最近添加的数据库的名称。