1

几个月来,我一直在使用 BaseX 和 REST 来处理一些 XML 文件。到目前为止,我一直在使用查询导出我的文件:

db:export(',char(39),dbName,char(39),',',char(34),'path',char(34),')

如果这令人困惑,那只是因为我展示了它是如何构造的,实际调用如下所示:

http://localhost:8984/rest?query=db%3Aexport%28%27dbName%27%2C%22C%3A%5CUsers%5Cdak52%5CDocuments%5Cfolder%22%29

无论如何,这工作得很好,但我想在我的输出中包含 XML 声明。我尝试将omit-xml-declaration选项设置为“否”,但我想我没有正确执行。当我尝试从指定该选项的 BaseX GUI 导出时,它工作正常,但我想通过 REST 完成这一切,这就是我遇到问题的地方。以下是我的查询,其中包含选项。

http://localhost:8984/rest?query=db%3Aexport%28%27dbName%27%2C%22C%3A%5CUsers%5Cdak52%5CDocuments%5Cfolder%22%29&omit-xml-declaration=no

这会运行并生成输出,但此输出不包括我的 xml 声明。

4

1 回答 1

1

输出序列化选项

一般来说,声明输出序列化参数有两种选择(我简化了查询):

导出序列化选项

问题是这些都设置了输出序列化选项。您需要更改导出选项,如文档中所述。对于查询

db:export("foo", "/tmp", map { 'omit-xml-declaration': 'no' })

使用 REST 调用

http://localhost:8984/rest?query=db:export(%22foo%22,%20%22/tmp%22,%20map%20{%20%27omit-xml-declaration%27:%20%27no %27%20})

于 2015-07-09T15:06:18.383 回答