Xquery 如何在Marklogic Server中下载文档?

Xquery 如何在Marklogic Server中下载文档?,xquery,marklogic,Xquery,Marklogic,我想写一个xquery,它将下载上传的文档并保存在Marklogic Server中。我如何才能做到这一点?使用 使用 请参见,其中有以下示例 考虑具有以下内容的form.xqy XQuery模块: <html xmlns="http://www.w3.org/1999/xhtml"> <body> <form name="test" action="upload.xqy?uid={xdmp:random()}" method="post"

我想写一个xquery,它将下载上传的文档并保存在Marklogic Server中。我如何才能做到这一点?

使用

使用

请参见,其中有以下示例

考虑具有以下内容的form.xqy XQuery模块:

<html xmlns="http://www.w3.org/1999/xhtml">
  <body>
  <form name="test" action="upload.xqy?uid={xdmp:random()}" method="post"
        enctype="multipart/form-data">
  <p><label>File to upload:
  <input type="file" class="name" name="upload" size="50"/></label></p>
  <p><input type="submit" value="Upload and Get Results"/></p>
  </form>
  </body>
</html> 
执行form.xqy文件,选择一个文件,然后单击 上传并获取结果按钮。你上传的文件 将根据浏览器中的mime类型打开。如果你 要将其保存到数据库中,可以使用 xdmp:插入文档以执行此操作

还有其他工作需要支持多部分上传。

请参阅,其中有以下示例

考虑具有以下内容的form.xqy XQuery模块:

<html xmlns="http://www.w3.org/1999/xhtml">
  <body>
  <form name="test" action="upload.xqy?uid={xdmp:random()}" method="post"
        enctype="multipart/form-data">
  <p><label>File to upload:
  <input type="file" class="name" name="upload" size="50"/></label></p>
  <p><input type="submit" value="Upload and Get Results"/></p>
  </form>
  </body>
</html> 
执行form.xqy文件,选择一个文件,然后单击 上传并获取结果按钮。你上传的文件 将根据浏览器中的mime类型打开。如果你 要将其保存到数据库中,可以使用 xdmp:插入文档以执行此操作

还有额外的工作来支持多部分上传

let $filename := xdmp:get-request-field-filename("upload")
let $disposition := fn:concat("attachment; filename=""",$filename,"""")
let $x := xdmp:add-response-header("Content-Disposition", $disposition)
let $x:= xdmp:set-response-content-type(
         xdmp:get-request-field-content-type("upload"))
return
xdmp:get-request-field("upload")