我正在使用Python / Django构建一个Facebook应用程序。我安装了FanDjango,效果很好。还有一件我需要的东西。
我想为应用程序构建一个“喜欢门”。我希望该应用能够检测用户是否“喜欢”粉丝页面,然后才能查看其大部分内容。我还没有找到一个好的解决方案。
我对使用像PyFacebook这样的东西很谨慎。有人可以建议一个好的选择吗?感谢。
答案 0 :(得分:2)
感谢。我通过阅读我已经安装的facepy模块中的文档来实现这一点。以下是您访问特定页面的用户“赞”信息的方法:
from facepy import SignedRequest
if 'signed_request' in request.REQUEST:
signed_request = SignedRequest.parse(request.REQUEST.get('signed_request'), settings.FACEBOOK_APPLICATION_SECRET_KEY)
if signed_request.page.is_liked:
test = "yes!"
else:
test = "no!"
答案 1 :(得分:2)
Fandjango包裹着facepy,所以它实际上更容易。通过pip仅安装Fandjango以避免冲突。
在包含请求对象的视图中,您只需检查
即可request.facebook.signed_request.page.is_liked
并执行不同的操作。请记住,如果应用不在页面中,该页面将为“无”。
答案 2 :(得分:1)
我不是Facebook的专家,并且没有使用Facebook图表那么多,但这应该有效。
一旦您对用户进行了身份验证,就可以通过Facebook Graph获取他们的喜欢:
https://graph.facebook.com/me/likes/{your_contents_graph_id}?access_token={access_token}
在Python中,我可以通过以下方式查询:
import requests
url = "https://graph.facebook.com/me/likes/{your_contents_graph_id}?access_token={access_token}".format(your_contents_graph_id=your_contents_graph_id, access_token=access_token)
r = request.get(url)
if r.status_code == '200':
page_liked = True
else:
page_liked = False
所有这些说,我不会喜欢您的内容。我或其他任何人都不喜欢他们没有完整审查的内容。您可能想要考虑一种让人们查看您内容的替代方法。