Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/solr/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用http post apache solr插入新的json文档_Json_Http_Post_Solr - Fatal编程技术网

使用http post apache solr插入新的json文档

使用http post apache solr插入新的json文档,json,http,post,solr,Json,Http,Post,Solr,我拥有的:Apache Solr 5.2.1 我想要什么:在我定义的特定核心中添加新文档 示例:solr核心的地址--> http://IP_ADDRESS:8984/solr/myCustom_core/ 我想直接从浏览器的url栏向上面的核心添加一个由{“id”:“00001”,“title”:“my title”}组成的json文档 问题: 我试图通过以下方式解决这个问题: http://IP_ADDRESS:8984/solr/myCustom_core/update?wt=json&

我拥有的:Apache Solr 5.2.1

我想要什么:在我定义的特定核心中添加新文档

示例:solr核心的地址-->

http://IP_ADDRESS:8984/solr/myCustom_core/

我想直接从浏览器的url栏向上面的核心添加一个由{“id”:“00001”,“title”:“my title”}组成的json文档

问题: 我试图通过以下方式解决这个问题:

 http://IP_ADDRESS:8984/solr/myCustom_core/update?wt=json&{add:{"id":"00001","title":"my title"}}&commit=true
浏览器的响应为:

{"responseHeader":{"status":0,"QTime":88}}
但是,当我在服务器端检查时,不会添加新条目

相反,如果我尝试使用Solr的UI中提供的submit命令添加这样的文档,那么它是可行的

有人能给我提供正确的方法来建立正确的url地址吗? 谢谢

编辑:多亏MatsLindh,我用以下方法解决了我的问题:

http://IP_ADDRESS:PORT/solr/myCustom_core/update?stream.body=<add><doc><field name="exampleField">example value</field></doc></add>&commit=true
http://IP_ADDRESS:PORT/solr/myCustom_core/update?stream.body=example value&commit=true
您可以通过获取变量,而不是使用POST(或常规正文)

确保对URL中使用的内容执行适当的转义


您还必须在提交的内容变得可搜索之前执行提交,可以通过请求中的
commit=true
,也可以通过发出单独的提交请求。

谢谢,伙计,您让我开心了