我有什么:Apache Solr 5.2.1
我想要什么:在我定义的特定核心中添加新文档
示例:solr核心的地址 - >
http://IP_ADDRESS:8984/solr/myCustom_core/
我想直接从浏览器的网址栏中将{“id”:“00001”,“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命令添加这样的文档,它就可以工作。
有人能为我提供正确的方法来构建正确的网址吗? 感谢
编辑:感谢MatsLindh我用这个解决了我的问题:
http://IP_ADDRESS:PORT/solr/myCustom_core/update?stream.body=<add><doc><field name="exampleField">example value</field></doc></add>&commit=true
答案 0 :(得分:3)
您可以通过GET变量use stream.body
to send an arbitrary content stream而不是使用POST(或常规正文)。
请务必妥善处理您在网址中使用的内容。
在提交的内容变得可搜索之前,您还必须通过请求中的commit=true
或发出单独的提交请求来执行提交。