0
你好我正在玩春季引導和學習Web服務。我開始玩facebook圖形API並使用restfb。我獲得訪問令牌並且每次都使用硬編碼。現在我並不總是想要硬編碼我的憑證(訪問令牌),我希望能夠在登錄到我的賬戶時獲得令牌,而不必在每次嘗試從臉上檢索我的照片時都對硬幣進行編碼,並使用它在我的應用程序。有沒有人與restfb合作讓我看看如何在沒有硬編碼的情況下自動獲取訪問令牌的例子。謝謝。我的uri只是「localhost:8080/myapp」。嘗試使用restFB獲取訪問令牌。但不指揮
@Controller
@RequestMapping("/")
public class HomeController {
@Value("#{faceBookappId['APP_KEY']}")
private static String APP_KEY;
@Value("#{faceBookappSecret['SECRET']}")
private static String APP_SECRET;
private FacebookClient.AccessToken getFaceBookUserToken(String code, String url) throws IOException {
WebRequestor web = new DefaultWebRequestor();
WebRequestor.Response accessTokens = web.executeGet("https://graph.facebook.com/oauth/access_token?client_id="+
APP_KEY+url+"&client_secret="+APP_SECRET+"&code=" + code);
return DefaultFacebookClient.AccessToken.fromQueryString(accessTokens.getBody());
}
@RequestMapping(method= RequestMethod.GET)
public String helloFaceBook(Model model) {
String url = "https://www.facebook.com/dialog/oauth?"+APP_KEY;
return "redirect"+url;
}
}
感謝您的答覆使用obtainUserAccessToken。我更新了我的帖子,因爲我添加了我的代碼,並且我知道我的代碼錯了,但是請你可以和我一起工作,因爲我試圖修復這個問題或幫助我糾正錯誤。我很感激幫助。我應該寫這是在一個單獨的課程,或者這可以在控制器中完成。謝謝您的幫助。什麼是(Version.VERSION_2_2)。 –
restFb的想法是爲了免除管理Web請求的負擔。你不需要WebRequestor。 所有你需要的是: FacebookClient facebookClient = new DefaultFacebookClient(Version.VERSION_2_2); AccessToken token = facebookClient.obtainAppAccessToken(appId,appSecret); –