如果您有权访问将条目添加到 SQL 数据库的代码,只需修改它以另外创建一个 XML 字符串并将其发布到您的 Solr 服务器 URL。这样可以避免很多复杂性。例如,在 PHP 中你可能会这样做:
$url = "http://localhost:7641/solr/update";
$header = array("Content-type:text/xml; charset=utf-8");
$postString = "<add><doc><field name=\"id\">24</field></doc?</add>";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
curl_setopt($ch, CURLINFO_HEADER_OUT, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);
$data = curl_exec($ch);
curl_setopt($ch, CURLOPT_POSTFIELDS, "<commit />");
$data = curl_exec($ch);
使用 Python 的 curl 库 - 它会比上面的代码更简单。
如果您无权访问该代码,请将 last_modified 时间戳字段添加到您的数据库并使用 DataImportHandler 的 delta import functionality 来查询新项目并将它们导入 Solr。您必须定期调用 DataImportHandler 请求处理程序。