我注意到在我们的开发marklogic服务器(7.0-6.8)中加载的utf-8 xml文档(xdmp:document-get()
+ xdmp:document-insert()
)具有ascii编码。同时回到生产服务器(7.0-5.1),没有问题; utf-8加载为utf-8。我追踪了问题并发现它是由xdmp:document-get()
引起的。
所以我编写了以下代码片段并在两个服务器控制台上运行它,并在开发服务器上进行了错误的编码,并在生产时进行了正确的编码。
let $options := <options xmlns="xdmp:document-get">
<repair>full</repair>
<encoding>UTF-8</encoding>
<format>xml</format>
</options>
let $url := "http://******/ref_batches/electronic/20170801_e31_004 /201731780-004.xml"
return xdmp:document-get($url, $options)
我的初步猜测:不同的版本号可能导致了这一点。所以我在本地服务器(7.0-6-12)上测试并获得了正确的utf-8编码。后来我们将开发服务器升级到(7.0-6-12)并重新测试以获得不正确的编码(ascii)
是否有一些marklogic配置负责此转码?
感谢