solr を試しています...削除クエリを実行しようとすると、次のエラーが表示されます。
curl http://localhost:8983/solr/update --data-binary '<delete><id>SP2514N</id></delete>'
エラーは次のとおりです。
Error 400 missing content stream
Problem accessing /solr/update. Reason: missing content stream
他の答えは正しいようですが、理由は説明していません。使用しているコンテンツ タイプを に変更するだけで済みます。text/xmlそれ以外の場合、curl はオプション (または) を使用してデフォルトapplication/x-www-form-urlencodedを使用します。--data-binary-d
次のコマンドを使用する必要があります。
curl -H 'Content-Type: text/xml' http://localhost:8983/solr/update --data-binary '<delete><id>SP2514N</id></delete>'
パラメータを URLに追加して、commit=trueすぐにコミットを発行することをお勧めします。そうしないと、(次のコミットまで) 削除したいドキュメントが引き続き表示されます。
パラメータを使用して、他の回答で提案されているように、GET を介して URL 内で直接 xml を渡すこともできstream.bodyます。
使用する : -
http://localhost:8983/solr/update?stream.body=<delete><query>id:SP2514N</query></delete>&commit=true