繁体   English   中英

使用restfb获取页面访问令牌的正确方法是什么?

[英]What's the correct way to obtain a page access token with restfb?

在我的应用程序中,我需要在 Facebook 页面的相册中发布图像。

按照 resfb 文档,我正在实施 OAuth 流程。 特别是我以这种方式创建了登录网址:

FacebookClient client = new DefaultFacebookClient(Version.VERSION_2_12);
String loginDialogUrlString = client.getLoginDialogUrl(APP_ID, REDIRECT_URL, scopeBuilder);

但现在我无法理解我创建页面访问令牌。

我试过用这个:

AccessToken accessToken = client.obtainUserAccessToken(APP_ID, APP_SECRET, REDIRECT_URL, verificationCode); // verification code from the the previous login

但是当我尝试使用此(用户)访问令牌在我的页面上发布内容时,我收到此错误:

com.restfb.exception.FacebookOAuthException: Received Facebook error response of type OAuthException: (#210) A page access token is required to request this resource. (code 210, subcode null) 'null - null'

那么,获取 PAGE 访问令牌的正确方法是什么?

注意我正在使用此代码发布照片:

byte[] imageAsBytes = fetchBytesFromImage();
JsonObject obj = client.publish(
        "mypage",
        JsonObject.class,
        BinaryAttachment.with("cat.jpg", imageAsBytes, "image/jpeg"),
        Parameter.with("message", "A cat")
);

通过使用用户访问令牌创建的FacebookClient ,您可以调用:

Connection<Account> connection = client.fetchConnection("/me/accounts", Account.class);

然后遍历连接,您可以访问用户所管理页面的所有页面访问令牌。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM