Solr错误-流主体已禁用

时间:2018-07-19 06:46:31

标签: solr document

我正在从浏览器URL中删除文档。

我正在使用Solr-7.4.0

我正在使用此查询删除文档

^#(?:[0-9a-fA-F]{3}){1,2}$

这是下面的错误消息返回。

http://localhost:8983/solr/test/update?stream.body=<delete><query>*:*</query></delete>&commit=true

我也尝试过

{
  "error":{
    "metadata":[
      "error-class","org.apache.solr.common.SolrException",
      "root-error-class","org.apache.solr.common.SolrException"],
    "msg":"Stream Body is disabled. See http://lucene.apache.org/solr/guide/requestdispatcher-in-solrconfig.html for help",
    "code":400}}

但没有任何运气。 返回以下消息:

http://localhost:8983/solr/test/update?commit=true -H "Content-Type: text/xml" --data-binary '<delete><query>*:*</query></delete>'

但文档没有删除。

我正在使用DIH导入数据。

我的data-config.xml文件是

{
  "responseHeader":{
    "status":0,
    "QTime":1}}

2 个答案:

答案 0 :(得分:1)

我是由邮递员修好的

方法: POST Content-Type: application / json 身体

{
    "set-property": [{
            "requestDispatcher.requestParsers.enableRemoteStreaming": true
        },
        {
            "requestDispatcher.requestParsers.enableStreamBody": true
        }
    ]
}

URL: http://localhost:8983/api/cores/test5/config

之后在网址下运行:

http://localhost:8983/solr/test5/update?stream.body=%3Cdelete%3E%3Cquery%3E*:*%3C/query%3E%3C/delete%3E&commit=true

工作正常。

答案 1 :(得分:1)

另一种方法是打开 solrconfig.xml 文件并直接进行编辑。

默认值应如下所示:

<requestParsers enableRemoteStreaming="true"
                multipartUploadLimitInKB="2048000"
                formdataUploadLimitInKB="2048"
                addHttpRequestToContext="false"/>

我们需要添加 enableStreamBody 属性:

<requestParsers enableRemoteStreaming="true"
                enableStreamBody="true"
                multipartUploadLimitInKB="2048000"
                formdataUploadLimitInKB="2048"
                addHttpRequestToContext="false"/>

只记得在Solr中重新加载集合,以便应用更改。