我正在使用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/