MarkLogic无法识别mime类型的文件

时间:2014-05-21 10:09:56

标签: rest marklogic mime mlphp nosql

我正在构建一个使用MLPHP library将文档插入MarkLogic服务器的应用程序。问题是当我插入二进制文档时,例如PDF。 mime类型将无法正确设置,因此无法打开文件。

这是我用来插入文档的代码:

// initialize REST client
$client = new MLPHP\RESTClient('127.0.0.1', 8010, 'v1', '', 'rest-writer-user', 'writer-pw');

// create new document and load content
$doc = new MLPHP\Document($client);
$doc->setContentType("application/pdf"); 
$doc->setContentFile("demo.pdf"); 
$doc->write('pdf_demo');

这是在提交给服务器后$ doc对象的转储: http://i58.tinypic.com/15fiyhc.png

这里我们在搜索结果中有插入的文档: http://i60.tinypic.com/2e2ihcg.png

但正如预期的那样,由于错误的mimetype,浏览器无法处理该文件: http://i60.tinypic.com/20pu0e0.png

任何人都知道这里出了什么问题?

1 个答案:

答案 0 :(得分:1)

检查内容类型的响应标头是什么。

您可能必须将格式URL参数设置为二进制。您可以阅读http://docs.marklogic.com/REST/GET/v1/documents

上的完整文档

这是请求的样子

http://localhost:8010/v1/documents?uri=/pdf_demo.pdf&format=binary