唯一上传schema.xml viw REST API

时间:2017-07-18 16:26:29

标签: solr

我可能是瞎子,但我没有在文档中看到它。更新托管schema.xml文件的url和curl请求是什么?

我曾尝试过:

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

1 个答案:

答案 0 :(得分:0)

据我所知,没有&#34;取代完整的架构&#34; 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:删除复制字段规则。

要执行您想要的操作,您可能希望自己替换managed-schema文件,然后重新启动solr或自行重新加载内核:

  

为什么不建议手动编辑托管架构?

     

名为&#34; managed-schema&#34;的文件在示例配置中可能包括建议从不手动编辑文件的注释。在Schema API存在之前,此类编辑是对架构进行更改的唯一方法,用户可能非常希望继续以这种方式进行更改。   不鼓励这样做的原因是,如果稍后使用此处描述的Schema API进行更改,则可能会丢失模式的手动编辑,除非在使用Schema API之前重新加载核心或集合或重新启动Solr。如果在手动编辑后务必重新加载或重新启动,那么进行这些编辑就没有任何问题。