2017-02-09 84 views
1

我想用MarkLogic 8的REST API來創建它使用的文件系統模塊數據庫如在此圖像中的應用程序服務器模塊數據庫:設置文件系統使用MarkLogic REST API

Modules database using file system

我已經嘗試以下變型中,與每個命令下面的結果說明:

curl -v -X POST --anyauth -u admin:admin --header "Content-Type:application/json" \ 
-d '{"rest-api": { "name": "MyAppServer", "port": "8012", "database": "MyDB", "modules-database": 0 } }' \ 
http://127.0.0.1:8002/v1/rest-apis 

創建名爲數據庫「0」(不帶引號)

curl -v -X POST --anyauth -u admin:admin --header "Content-Type:application/json" \ 
-d '{"rest-api": { "name": "MyAppServer", "port": "8012", "database": "MyDB", "modules-database": "(file system) } }' \ 
http://127.0.0.1:8002/v1/rest-apis 

錯誤

ADMIN-INVALIDCONFIG:(ERR:FOER0000)無效配置: '(文件系統)' 不是一個有效的數據庫名

如果這是不可能的使用REST API設置模塊數據庫,是否可以使用REST API將文件加載到模塊數據庫中?我只找到將文檔插入數據庫的文檔。

+0

不是100%肯定,但我想插入文件在模塊數據庫工作正常,假設你設置適當的權限等。 –

+2

將文檔添加到模塊數據庫與其他任何數據庫沒有區別(使用文檔API發佈文檔或MLCP等)。但是,您必須確保爲使用該應用程序的用戶包含適當的權限(讀取和執行)。 –

+1

如果您願意將Gradle用作構建自動化工具,那麼https://github.com/rjrudin/ml-gradle將自動執行使用MarkLogic Management REST API的此類任務。 – rjrudin

回答

3

REST API應用程序不支持將模塊數據庫配置到文件系統。

REST API需要能夠在模塊數據庫中寫入和讀取文檔。

REST客戶端可以通過將REST客戶端視爲內容數據庫來讀取和寫入REST API應用服務器的模塊數據庫中的文檔。或者:

  • 創建一個不同的REST API應用服務器,它具有模塊數據庫作爲內容數據庫。 (可以將其視爲「元」REST API應用服務器。)
  • 連接到REST API應用服務器時指定數據庫參數。

只是要小心不要寫在由REST API的一個模塊,數據庫管理目錄中的文件:

/GROUP_NAME/ 
/marklogic.rest.*/ 
/ext/ 

希望幫助,

+0

我選擇了「元」應用程序方法,因爲我不希望在我的應用程序上啓用全局REST API - 謝謝! – Stu

相關問題