0

我正在使用这种模式:

http://localhost:8983/solr/select/?q=hello&wt=json&json.wrf=?&indent=true&hl=true&hl.fl=title

它返回如下:

?({
    "response":{"numFound":100,"start":0,"docs":[
        {
            "id":"1234",
            "title":"Something Hello"
            ..
            ..
        },
        ... bla bla, to the end
    ]
})

它显然显示100 records found在标题中,但项目{ bla bla... } 确实在just 10里面。它确实是索引中的第 100 项。它必须准确地显示 100。

它只显示前 10 个项目吗?
我在模式中错过了什么?

4

1 回答 1

4

100 是 Solr 找到的记录总数,但默认情况下它一次只返回 10 个。

尝试添加&rows=100到 URL 以一次获取所有 100 个结果。

编辑:在一个真实的应用程序中,您可能希望在页面中获取结果,这样您就不会在尝试一次获取数不胜数的结果时耗尽内存。在这种情况下,您可以组合startrows选项。

例如一次获取 20 个结果:

  • 第一个请求将使用&start=0&rows=20

  • 第二个请求将使用&start=20&rows=20

  • ... 以此类推,直到您获取所有结果。

这类似于在 SQL 中使用OFFSETandLIMIT关键字,如果您熟悉的话。

于 2012-08-08T07:50:28.923 回答