space 的 Solr 查询,只有 (#q=%20) 个停止
Solr query with space, only (#q=%20) stalls
我有一个基于 Web 的前端(目前是本地主机),它使用 Ajax 查询 Solr。
运行良好,但如果我在 input/search 框中提交单个 space(仅此而已),浏览器中的 URL 会显示
...#q=%20
在那种情况下,我得到 400 error
,我的网页停滞(不刷新),显然是在等待 Solr 的响应。
相比之下,如果我提交分号 (;
) 而不是 space,那么页面会立即刷新,尽管没有结果(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/
我有一个基于 Web 的前端(目前是本地主机),它使用 Ajax 查询 Solr。
运行良好,但如果我在 input/search 框中提交单个 space(仅此而已),浏览器中的 URL 会显示
...#q=%20
在那种情况下,我得到 400 error
,我的网页停滞(不刷新),显然是在等待 Solr 的响应。
相比之下,如果我提交分号 (;
) 而不是 space,那么页面会立即刷新,尽管没有结果(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/