在重大伏都教之后,我终于得到了分数API。事实证明,您必须将Enhanced Auth Dialog
设置为disabled
,否则Facebook会忽略您的publish_actions
权限。如果其他任何人都在努力,只需要抬头。
但是,我完全使用Javascript API。没有服务器端脚本可用。
发布分数的唯一方法是使用应用访问令牌。获得其中之一的唯一方法是使用app secret,这必须在javascript代码中供全世界查看。这有多糟糕?
TBH我不在乎是否有人在我的小乒乓球比赛中欺骗分数。对他们有好处,只有他们和他们的朋友才能看到它。这只是一点乐趣。但是,如果我的应用秘密被发布,究竟会出现什么问题?有人可以劫持整个申请吗?或者这只是一种不好的做法,一个小小的迷你游戏什么都不会出错?这完全是纯粹的JavaScript SDK所以它似乎只能通过用户访问令牌来工作,所以我的第一直觉是没关系。但我以为我会问......!
答案 0 :(得分:1)
您还使用了哪些其他权限?如果您正在使用“publish_stream”,我相信您可以想象可能会发生的恶作剧!更糟糕的是,如果用户同时拥有您的公钥和私钥(他们会这样做),他们可以创建一个完整的欺骗应用程序,将您自己标识为自己!
facebook中的“域名”选项可以防止这种情况发生,但如果攻击者有任何机会可以执行XSS attack,他们可能会编写伪装成游戏的恶意应用程序。
您是否曾考虑使用google app engine编写非常简单的内容,其唯一目的是处理应用程序身份验证令牌?