java - 如何在 Spring Social Twitter 中获得超过 20 个好友?

标签 java spring twitter spring-social spring-social-twitter

我正在使用 Spring Social Twitter 来检索用户的 friend 姓名。 这是我的代码。

@Controller
@RequestMapping("/")
   public class HelloController {

    private Twitter twitter;

    private ConnectionRepository connectionRepository;

    @Inject
    public HelloController(Twitter twitter, ConnectionRepository connectionRepository) {
        this.twitter = twitter;
        this.connectionRepository = connectionRepository;
    }

    @RequestMapping(method=RequestMethod.GET)
    public String helloTwitter(Model model) {
        if (connectionRepository.findPrimaryConnection(Twitter.class) == null) {
            return "redirect:/connect/twitter";
        }

        model.addAttribute(twitter.userOperations().getUserProfile());
        CursoredList<TwitterProfile> friends = twitter.friendOperations().getFriends();
        model.addAttribute("friends", friends);
        for ( TwitterProfile frnd : friends) {
            System.out.println(frnd.getName());
        }
        return "hello";
    }

}

但它只检索到 20 个好友。我怎样才能得到所有的 friend ? (假设我有 1000 个 friend )

最佳答案

您必须迭代所有游标并收集结果,如下所示:

    // ...
    CursoredList<TwitterProfile> friends = twitter.friendOperations().getFriends();
    ArrayList<TwitterProfile> allFriends = friends;
    while (friends.hasNext()) {
        friends = twitter.friendOperations().getFriendsInCursor(friends.getNextCursor());
        allFriends.addAll(friends);
    }
    // process allFriends...

关于java - 如何在 Spring Social Twitter 中获得超过 20 个好友?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26299466/

相关文章:

java - springMVC中的Httpsession管理

java - 通过对象匹配查询MongoDB中的文档

java - 在 Spring Controller 方法中使 ModelAttribute 可选

java - getJdbcTemplate().queryForObject 与 Spring JDBC

javascript - 社交媒体分享按钮

java - 如何使 Apache ISIS 中的集合显示在父对象屏幕中?

Java - 在 Windows 7 X32 中安装包 javax.media.jai

java - Eclipse:工作区中的所有项目开始给出“内部错误发生期间: "Validating XXXX"NullPointer 异常”

html - 制作背景 100%

php - 像 twitter 一样使用 @ 符号来识别用户