2015-10-13 33 views
1

目前我能够用此来把一个JSON文件到一个文档中Cloudant:curl -X PUT 'https://username.cloudant.com/dummydb/doc3' -H "Content-Type: application/json" -d @numbers.json。我有很多JSON文件上传在同一DB.How不同的文档能不能做到?如何通过cURL将具有多个JSON文件的多个文档上传到Cloudant DB?

+0

没有多大帮助。发现参考我的问题在这里http://stackoverflow.com/questions/29938435/uploading-multiple-documents-to-couchdb-giving-error但没有解决办法呢。在我的情况下,“文档”是.json文件。如何将它们作为文档发布? @imseth –

+0

你想使用CURL还是可以使用其他编程技术,比如Node.js? –

+0

只有Curl @Alex –

回答

0

您可以创建一个for loop和创建从每个JSON文件的文件。

例如,在命令之下我在我的目录4个JSON文件,我创造我people数据库4号文件:

for file in *.json 
> do 
> curl -d @$file https://username:[email protected]/people/ -H "Content-Type:application/json" 
> done 
{"ok":true,"id":"763a28122dad6c96572e585d56c28ebd","rev":"1-08814eea6977b2e5f2afb9960d50862d"} 
{"ok":true,"id":"763a28122dad6c96572e585d56c292da","rev":"1-5965ef49d3a7650c5d0013981c90c129"} 
{"ok":true,"id":"763a28122dad6c96572e585d56c2b49c","rev":"1-fcb732999a4d99ab9dc5462593068bed"} 
{"ok":true,"id":"e944282beaedf14418fb111b0ac1f537","rev":"1-b20bcc6cddcc8007ef1cfb8867c2de81"} 
4

所以你肯定要使用Cloudant的_bulk_docs API端点在这场景。如果您正在进行大量写入,它会更高效(并且具有成本效益)。你基本上是POST一个包含所有JSON文档的数组。这里是它的文档:https://docs.cloudant.com/document.html#bulk-operations

更进一步,只要你已经正确构建你的JSON文件,你可以上传文件到_bulk_docs。在袅袅,这将是这个样子:curl -X POST -d @file.json <domain>/db/_bulk_docs ...(加上内容类型和所有其他的东西详细)。

从这一步开始,将使用ccurl(CouchDB/Cloudant cURL)工具将cURL语句包装到Cloudant中,并使其不那么冗长。有关更多信息,请参阅https://stackoverflow.com/users/4264864/glynn-birdhttps://developer.ibm.com/clouddataservices/2015/10/19/command-line-tools-for-cloudant-and-couchdb/

快乐躺卧!

相关问题