如何让PyFacebook与Google App Engine补丁一起工作?

0 投票
1 回答
593 浏览
提问于 2025-04-15 17:52

我试着按照这个问题里的建议去做:Facebook、Django 和 Google App Engine,但是遇到了不少问题。第一个问题是,from facebook.djangofb import facebook 这行代码不管用,因为当我想用 @facebook.require_login() 这个装饰器时,它提示说 facebook 模块里没有这个方法。如果我把它改成 import facebook.djangofb 然后用 @facebook.djangofb.require_login(),就能正常工作。有人知道这是怎么回事吗?

即使这样,我还是遇到了和这个问题一样的情况:app-engine-patch 和 pyFacebook 不工作

看起来很多人都遇到过这个问题,那有没有好的例子可以说明怎么把 PyFacebook 和 App Engine Patch 结合起来呢?

1 个回答

4

关于你的第一个问题:

from facebook.djangofb import facebook 这个写法不管用,因为当我尝试使用装饰器 @facebook.require_login() 时,它提示说 facebook 模块没有这个方法。如果我把它改成 import facebook.djangofb 然后用 @facebook.djangofb.require_login(),就可以正常工作了。

看起来 require_login 是在 facebook.djangofb 里,而不是在 facebook.djangofb.facebook 里。

所以你可以这样做:

import facebook.djangofb
@facebook.djangofb.require_login()
...

或者

from facebook import djangofb
@djangofb.require_login()
...

或者

from facebook.djangofb import require_login
@require_login()
...

关于第二个问题,你有没有试过另一个问题的答案(完全不使用 require_login,而是用 request.fb.check_session(request))?你得到了什么结果?

撰写回答