我在本地安装了Marklogic。
想要设置Rest Api实例,请遵循https://developer.marklogic.com/learn/rest/setup#create-a-rest-api-instance
的说明我复制并使用curl指令,减去反斜杠线延续
curl -v -X POST --anyauth -u admin:admin --header "Content-Type:application/json" -d '{"rest-api": { "name": "TutorialServer", "port": "8011", "database": "TutorialDB", "modules-database": "Tutorial-Modules" } }' http://localhost:8002/v1/rest-apis
它运行,但我得到的响应是“你的引导有效负载导致服务器抛出错误。底层错误消息:XDMP-JSONDOC:xdmp:get-request-body() - 文档不是JSON”。< / p>
我看不到json错误,虽然没有专家。在Windows 8.1上运行。我将文本复制到Word doc然后进入dos提示符。
答案 0 :(得分:4)
你可能有十几个非常好看的字形看起来像,但不是,你的想法。 重新开始,不要使用Word或Notepad或其他简单的ascii文本编辑器作为剪贴板。 仔细检查编码是7位ascii而不是8859-1,或输入。 使用od -c等十六进制转储进行双重检查。
现代出版工具优于字符编码保真度的良好排版。
答案 1 :(得分:2)
我现在相信这是一个逃避问题。 Marklogic页面上显示的内容可能适用于Linux环境。
在Windows上对我有用的是不使用单引号。这意味着外部字符串包装器的双引号,而不是单引号,并转义字符串中的双引号。
-d "{\"rest-api\": { \"name\": \"TutorialServer\", \"port\": \"8011\", \"database\": \"TutorialDB\", \"modules-database\": \"Tutorial-Modules\" } }" \
非常感谢ML的Stephen C为我解决这个问题。