marklogic用node-client-api保存xml文档?

我似乎无法将xml文档保存到marklogic与它的node-client-api。 我曾经使用下面的代码来尝试保存一个虚拟的XML文档

var marklogic = require('marklogic'); var my = require('../db/env.js'); var db = marklogic.createDatabaseClient(my.connInfo); console.log("Write a single dummy xml document"); db.documents.write( { uri: '/collegiate/testxml.xml', contentType: 'application/xml', content: '<entry-list><entry id="horror"></entry></entry-list>' }) 

然后我使用下面的代码来检索它:

 var marklogic = require('marklogic'); var my = require('../db/env.js'); var db = marklogic.createDatabaseClient(my.connInfo); console.log("Read a single xml document"); db.documents.read('/collegiate/testxml.xml') .result().then(function(document) { //console.log('\nURI: ' + document.uri); for (var key in document) { console.log("key: " + key + " value: " + document.key); } }).catch(function(error) { console.log(error); }); 

我从输出得到的是:

 Read a single xml document key: 0 value: undefined 

那么如何正确保存xml文档?

问题出在读取代码中。

由于客户端可以读取多个文档,read()请求将返回一个文档数组。

所以,试试像这样:

 function(documents) { for (var i=0; i < documents.length; i++) { console.log(documents[i].content); } } 

存储库有一些例子,但重点在于JSON文档:

https://github.com/marklogic/node-client-api/blob/master/examples/read-documents.js#L27

希望有帮助