2017-07-18 19 views
0

我可能是盲目的,但我沒有在文檔中看到它。更新託管schema.xml文件的正確url和curl請求是什麼?唯一上傳schema.xml viw REST API

我曾嘗試:

curl -X POST -d @schema.xml -H "Content-Type: text/xml" http://<SOLR>:8983/solr/<CORE>/schema/files/schema.xml 

curl -X POST -d @schema.xml -H "Content-Type: text/xml" http://<SOLR>:8983/solr/<CORE>/schema 

curl -X POST -d @schema.xml -H "Content-Type: text/xml" http://<SOLR>:8983/solr/<CORE>/schema/schema.xml 

所有與PUT方法了。

版本的Solr:5.5.2

回答

0

據我所知,沒有「更換整個架構」 command for the Schema API。該管理模式的基礎上,通過API命令集的更新:

POST /collection/schema

要添加,刪除或替換場,動力場規則,複製領域的規則,或新的字段類型,您可以發送通過一系列命令對/ collection/schema/endpoint執行POST請求以執行請求的操作。支持以下命令:

add-field:使用您提供的參數添加一個新字段。

delete-field:刪除一個字段。

replace-field:用一個配置不同的替換現有字段。

add-dynamic-field:使用您提供的參數添加新的動態字段規則。

delete-dynamic-field:刪除動態字段規則。

replace-dynamic-field:將現有的動態字段規則替換爲不同的配置。

add-field-type:使用您提供的參數添加一個新的字段類型。

delete-field-type:刪除一個字段類型。

replace-field-type:用一個配置不同的替換現有字段類型。

add-copy-field:添加新的副本字段規則。

delete-copy-field:刪除複製字段規則。

做你想做什麼,你可能要更換託管模式文件自己,然後重新啓動Solr的或重新加載核心自己:

爲什麼管理模式的手動編輯灰心?

示例配置中名爲「managed-schema」的文件可能包含建議不要手動編輯文件的註釋。在架構API存在之前,這些編輯是對架構進行更改的唯一方式,用戶可能有強烈的願望繼續以這種方式進行更改。 之所以不鼓勵這樣做,是因爲如果稍後使用此處描述的架構API進行更改,則可能會丟失架構的手動編輯,除非在使用架構API之前重新裝入核心或集合或重新啓動Solr。如果在手動編輯之後需要注意始終重新加載或重新啓動,那麼執行這些編輯時完全沒有問題。