微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

带空间的 Solr 查询,仅 (#q=%20) 停顿

如何解决带空间的 Solr 查询,仅 (#q=%20) 停顿

我有一个基于 Web 的前端(当前是 localhost),它使用 Ajax 来查询 Solr。

它运行良好,但如果我在输入/搜索框中提交一个空格(没有其他内容),则浏览器中的 URL 会显示

...#q=%20

在这种情况下,我得到一个 400 error,我的网页停止(不刷新),显然是在等待 Solr 的响应。

相比之下,如果我提交的是分号 (;) 而不是空格,则页面会立即刷新,尽管没有结果(displaying 0 to 0 of 0;预期)。

我的问题是是什么触发了 Solr 中的“ ”(%20) 查询错误,以及如何在 solrconfig.xml解决它?

解决方法

更新。solrconfig.xml 条目解决了我描述的 q=%20 问题。

<requestHandler name="/select" class="solr.SearchHandler">
  <lst name="defaults">
    <str name="echoParams">explicit</str>
    <int name="rows">10</int>
    <str name="hl">off</str>
    <str name="wt">html</str> 
    <str name="df">query</str>
    <!-- *** ADDITION: *** -->
    <str name="defType">edismax</str>
  </lst>
</requestHandler>

注意:开发代码,虚拟数据。

之前: https://www.youtube.com/watch?v=GhkA4XlqWds&list=PLTtHvbtVBhk6zAqSJ3A1-shsD_h5i3IuP&index=2

之后: https://www.youtube.com/watch?v=507DdPOx1xA&list=PLTtHvbtVBhk6zAqSJ3A1-shsD_h5i3IuP&index=1


其他讨论(reddit:Solr):https://old.reddit.com/r/Solr/comments/kt97ql/solr_query_with_space_only_q20_gives_error/

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。