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