我正在使用Spring Social Twitter检索用户的朋友名称。
这是我的代码。

@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个朋友。我怎么能得到所有的朋友? (假设我有1000个朋友)

最佳答案

您必须遍历所有游标并按以下方式收集结果:

    // ...
    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个以上的 friend ?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26299466/

10-10 19:27