Facebook:收到OAuthException类型的Facebook错误响应:无效的OAuth访问令牌。 (代码190,子代码为null)

时间:2015-07-16 10:02:01

标签: facebook facebook-graph-api oauth facebook-oauth

情况:我可以通过网络应用获取访问令牌,还可以获取我的个人资料名称和个人资料ID。我添加了此代码以在我的墙上发布消息:

@SuppressWarnings("deprecation")
FacebookClient fbClient = new DefaultFacebookClient(accessToken, MY_APP_SECRET);
FacebookType publishMessageResponse =  fbClient.publish("me/feed", FacebookType.class,
        Parameter.with("message", "RestFB test 123"));

com.restfb.exception.FacebookOAuthException:收到OAuthException类型的Facebook错误响应:无效的OAuth访问令牌。 (代码190,子代码为null)

问题:我收到错误消息:

Received Facebook error response of type OAuthException: Invalid OAuth access token. (code 190, subcode null)

我尝试了什么:我正在使用restFb1.13(最新版本)。我也尝试使用较旧的restFb1.7,但错误仍然存​​在。我在文档中找不到上面的错误代码。不幸的是,在StackOverflow和其他站点上搜索不会列出此错误。

任何建议都应该非常有用。

1 个答案:

答案 0 :(得分:2)

解决了它。问题是从facebook收到的Accesstoken格式为:AccessToken =一些长字母数字字符串& expires =某个字符串。我们必须删除" Accesstoken ="之间的部分。和"到期="。

我是通过

做到的
    from os.path import join, dirname
from os import environ, chdir, putenv, getenv
import sys

root = 'kivy_install'
if hasattr(sys, '_MEIPASS'):
    # PyInstaller >= 1.6
    chdir(sys._MEIPASS)
    root = join(sys._MEIPASS, root)
elif '_MEIPASS2' in environ:
    # PyInstaller < 1.6 (tested on 1.5 only)
    chdir(environ['_MEIPASS2'])
    root = join(environ['_MEIPASS2'], root)
else:
    chdir(dirname(sys.argv[0]))
    root = join(dirname(sys.argv[0]), root)


sys.path += [join(root, '_libs')]

if sys.platform == 'darwin':
    sitepackages = join(root, '..', 'sitepackages')
    sys.path += [sitepackages, join(sitepackages, 'gst-0.10')]
    putenv('GST_REGISTRY_FORK', 'no')

environ['GST_PLUGIN_PATH'] = join(root, '..', 'gst-plugins')
environ['KIVY_DATA_DIR'] = join(root, 'data')
environ['KIVY_EXTS_DIR'] = join(root, 'extensions')
environ['KIVY_MODULES_DIR'] = join(root, 'modules')
environ['KIVY_EMBED'] = '1'