Я работаю над приложением для календаря, и я хотел получить предстоящие дни рождения из Facebook, поэтому я прочитал об этом и обнаружил, что мне нужно создать приложение с помощью Google API-браузера Facebook, но это не сработало мой, когда я пытаюсь получить список моих друзей, я получаю только пустой список. Вот код, который я использовал: ошибок нет, но список пуст.Как добавить друзей Facebook в ближайшие дни рождения в мое приложение?
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String code = request.getParameter("code");
String URLEncodedRedirectURI = URLEncoder.encode("http://localhost:8084/facebookfriends/FriendsListServlet");
String MY_ACCESS_TOKEN = "";
String authURL = "https://graph.facebook.com/oauth/access_token?"
+ "client_id=" + FriendsListServlet.APP_ID + "&"
+ "redirect_uri=" + URLEncodedRedirectURI + "&"
+ "client_secret=" + FriendsListServlet.APP_SECRET + "&"
+ "code=" + code;
URL url = new URL(authURL);
String result = readURL(url);
String[] pairs = result.split("&");
for (String pair : pairs) {
String[] kv = pair.split("=");
if (kv[0].equals("access_token")) {
MY_ACCESS_TOKEN = kv[1];
}
}
FacebookClient facebookClient = new DefaultFacebookClient(MY_ACCESS_TOKEN, FriendsListServlet.APP_SECRET);
Connection<User> friends = null;
try {
User loginUser = facebookClient.fetchObject("me", User.class);
request.setAttribute("loginUser", loginUser);
friends = facebookClient.fetchConnection("/me/friends", User.class);
} catch (FacebookException e) {
e.printStackTrace();
}
List<User> friendsList = friends.getData();
int count = friendsList.size();
request.setAttribute("friendsList", friendsList);
request.getRequestDispatcher("FriendsList.jsp").forward(request, response);
}
Тьфу! Хорошо, спасибо в любом случае :) – Shaban