如果您知道如何更好地提出问题,请随时编辑标题。(标记也是一个问题。)这个问题在这个一般形式中可能太难了,所以让我们考虑一个具体的例子。
您可以通过请求/questions ?sort=newest
页面获得一屏 stackoverflow 问题。下一页链接指向/questions?page=2 &sort=newest
. 我想在服务器端,请求被翻译成带有 LIMIT 子句的 SQL 查询。这种方法的问题是,如果在用户浏览第一页时添加了新问题,他的第二页将从他已经看到的一些问题开始。(如果他每页有 10 个问题,并且恰好添加了 10 个新问题,那么他第二次会得到完全相同的内容!)
有没有一种优雅的方法来解决这个常见问题?我意识到这不是什么大问题,至少对于stackoverflow来说不是,但仍然如此。
我最好的想法(除了存储每个客户端的请求历史)是使用/questions?answer_id=NNN
格式。服务器返回一个以请求的答案开头的页面,并将下一页上第一个答案的 id 放入下一页链接。一定有办法为此编写 SQL,对吧?
平时是怎么做的?还是有更好的方法?