I used version 2.0.3.RELEASE of spring-social-facebook and Facebook app api v2.8. I called Facebook login but returned this message. \"(#12) bio field is deprecated for vers
remove the parameter ->"bio" from your api call url, for me it solved
before "https://graph.facebook.com/v2.7/me/?fields=name,picture,work,website,religion,location,locale,link,cover,age_range,bio,birthday,devices,email,first_name,last_name,gender,hometown,is_verified,languages&access_token="
after
"https://graph.facebook.com/v2.7/me/?fields=name,picture,work,website,religion,location,locale,link,cover,age_range,birthday,devices,email,first_name,last_name,gender,hometown,is_verified,languages&access_token="
FacebookTemplate template = new FacebookTemplate(access_token);
String [] fields = { "id", "email", "first_name", "last_name" };
User profile = template.fetchObject("me", User.class, fields);
package hello;
import org.springframework.social.connect.ConnectionRepository;
import org.springframework.social.facebook.api.Facebook;
import org.springframework.social.facebook.api.PagedList;
import org.springframework.social.facebook.api.Post;
import org.springframework.social.facebook.api.User;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
@RequestMapping("/")
public class HelloController {
private Facebook facebook;
private ConnectionRepository connectionRepository;
public HelloController(Facebook facebook, ConnectionRepository connectionRepository) {
this.facebook = facebook;
this.connectionRepository = connectionRepository;
}
@GetMapping
public String helloFacebook(Model model) {
if (connectionRepository.findPrimaryConnection(Facebook.class) == null) {
return "redirect:/connect/facebook";
}
String [] fields = { "id","name","birthday","email","location","hometown","gender","first_name","last_name"};
User user = facebook.fetchObject("me", User.class, fields);
String name=user.getName();
String birthday=user.getBirthday();
String email=user.getEmail();
String gender=user.getGender();
String firstname=user.getFirstName();
String lastname=user.getLastName();
model.addAttribute("name",name );
model.addAttribute("birthday",birthday );
model.addAttribute("email",email );
model.addAttribute("gender",gender);
model.addAttribute("firstname",firstname);
model.addAttribute("lastname",lastname);
model.addAttribute("facebookProfile", facebook.fetchObject("me", User.class, fields));
PagedList<Post> feed = facebook.feedOperations().getFeed();
model.addAttribute("feed", feed);
return "hello";
}
}