【发布时间】:2026-02-12 17:25:01
【问题描述】:
我正在尝试在 Google 应用引擎项目中使用 pyfacebook 功能 (https://github.com/sciyoshi/pyfacebook/)。我遵循了 Facebook 开发者论坛 (http://forum.developers.facebook.net/viewtopic.php?pid=164613) 上的建议,并将附加功能添加到 __init__.py 文件中,将该文件复制到根目录我的项目目录并将其重命名为 facebook.py。导入 facebook.py 后,我在页面的 Python 类的 get(self) 方法中添加了以下内容:
facebookapi = facebook.Facebook(API_KEY, SECRET)
if not facebookapi.check_connect_session(self.request):
path = os.path.join(os.path.dirname(__file__), 'templates/login.html')
self.response.out.write(template.render(path, {'apikey': API_KEY}))
return
user = facebookapi.users.getInfo(
[facebookapi.uid],
['uid', 'name', 'birthday', 'relationship_status'])[0]
template_values = {
'name': user['name'],
'birthday': user['birthday'],
'relationship_status': user['relationship_status'],
'uid': user['uid'],
'apikey': API_KEY
}
path = os.path.join(os.path.dirname(__file__), 'templates/index.html')
self.response.out.write(template.render(path, template_values))
运行时出现以下错误:
文件“\much\baw08u\Private\IDS\helloworld\helloworld.py”,第 54 行,在获取中
如果不是 facebookapi.check_connect_session(self.request): AttributeError:“Facebook”对象没有属性“check_connect_session”
所以它似乎可以很好地加载 facebook API,但不是我添加的新方法。我从开发者论坛复制并粘贴了 Facebook 类定义底部的代码,并确保所有缩进都是正确的,但它似乎仍然无法识别它们。有谁知道可能是什么问题?
谢谢
本
【问题讨论】:
-
您是否向 facebook.Facebook 添加了方法(应该可以工作)或向 facebook 添加了函数(不应该工作,除非您使用 facebook.function_name)?
-
是的,这一切都在 facebook.Facebook 中——检查了缩进和所有内容。有没有人有修改后的 _init_.py 的副本,我可以测试它是否与语法有关?
-
有编译版吗?删除它。
-
不,删除所有 .pyc 文件,重新启动启动器,同样的事情仍然发生!我已经在 2 台不同的计算机上尝试过,结果相同。我找到了指向该文件的预修改版本的链接,但它们都是死链接。
标签: python google-app-engine facebook pyfacebook