Gmail 中的分页 API(上一个标记)

Pagination in Gmail API (Previous Token)

我已经实现了 GMail API,它可以帮我接收电子邮件。现在我正在尝试为其添加分页,我已经成功获取了下一条记录,但现在我还想拥有上一个选项(需要上一个标记)。

我无法进入下面是我目前尝试的方法。

public function paginate(Request $request){
        $label =  $request->input("label");
        $nextToken =  $request->input("next");
        $prevToken =  $request->input("prev");
        $messages = LaravelGmail::message();
        $msg = $messages->take(3)->in($label)->all($nextToken);
        $nextToken_New = $messages->pageToken;

        return view('gmail.load_mails', ['messages' => $msg, 'nextPageToken' => $nextToken_New,
        'prevPageToken' => $nextToken]);
}

现在在上面的函数中 nextPageToken 作为 $nextToken_New 在视图中传递 对于 prevPageToken,我无法设置上一页标记。(在代码中,我将最后一个 nextPageToken 设置为 prevPageToken,但它不起作用)

记住prevPageToken将用于设置返回键。

Gmail api 不支持上一页令牌。它不会 return 对你有价值。

您的第一个选择是将这些令牌保存在您的服务器上,然后当您想要返回页面时,只需将您想要的令牌提供给页面令牌字段

第二种选择,也是我个人认为最合乎逻辑的一种。将在您的服务器上缓存这些请求 returned 的数据,以便

  1. 您不必对服务器进行额外的 http 调用。
  2. 你没有吃上瘾的配额,拨打你以前打过的电话。

API 不适用于您在应用程序中实现分页。您应该只在您的工作完成后请求数据,然后缓存该数据,这样您就不需要两次发出相同的请求。