我正在寻找一种在使用ajax发布用户特定数据时验证用户facebook ID的方法。
我希望能够在使用ajax发布数据时验证Facebook用户ID是否正确。
问题是,如果我将facebook id作为我的ajax数据的一部分发布,它可以在javascript中编辑。我可以在服务器端进行图形调用,但这些调用非常慢,所以我希望将图形调用保持在最低限度。最好只在开头调用它。
有人建议采用有效/安全的方法吗?
答案 0 :(得分:1)
最后我的解决方案是通过php sdk获取用户的facebook id并通过添加salt并使用md5对其进行编码来创建它的哈希值。发布表单时,我同时包含了facebook id和hash。然后,我可以使用相同的salt值在使用之前仔细检查facebook的想法是否正确。这似乎为我的需求提供了足够的安全性。
答案 1 :(得分:0)
我知道您想避免进行图形调用,但您也可以调用客户端并调用Facebook API:
FB.api('/me', function(response) {
// Check that response.id matches the submitting user id
});
这将允许您检查登录用户的Facebook ID。你无法真正修改javascript中的任何内容,以便“假冒”成为另一个登录的Facebook用户。
否则,我不确定除非您自己拥有一个完整的登录系统,否则您还可以验证该ID,您可以将会话数据与服务器端数据库上保存的用户数据进行匹配。