当我在开发环境中打印“user_stream”时,将打印完整的字符串。但是,当我在生产环境中查看控制台中打印的内容时,不打印“user_stream”的全部内容,我相信这会在以后的其他代码中导致错误。
我的问题是:为什么不在生产环境的控制台中打印“user_stream”的所有内容,我该如何解决这个问题?
instance = UserSocialAuth.objects.get(user=request.user, provider='facebook')
token = instance.tokens
user_url = "https://graph.facebook.com/me/friends?access_token=" + token['access_token']
u = urllib.urlopen(user_url);
user_stream = json.loads(u.read())
print user_stream
答案 0 :(得分:0)
您的user_stream出现错误。弄清楚它是什么的最好方法是打印字符串,或直接打印错误消息。这些命令可以帮助您弄清楚发生了什么。
print u.read()
print user_stream['error']
我强烈怀疑您的访问令牌无论如何都无效。仔细研究一下。您可以从Graph API Explorer看到的一个示例是:
{
"error": {
"message": "Malformed access token AAACEdEose0cBAM0CipLFjIDZCysqmGyZCRJ6x4JsdSVkb177lM0UNMWqSYZA9BmBY0h3PbUiIJppQCbDZD",
"type": "OAuthException",
"code": 190
}
仔细阅读那里的信息,看看你是否能弄清楚如何纠正它。另外,请尝试打印完整的URL并在Graph API Explorer中运行它。