gpt4 book ai didi

javascript - 为什么不能在 Javascript 中通过 Scores API 发布分数?

转载 作者:可可西里 更新时间:2023-11-01 13:39:15 26 4
gpt4 key购买 nike

我正在编写一个我想与 Facebook Scores 集成的 javascript 游戏库。使用我的库制作的游戏通常在静态文件服务器上运行(即只是普通的 HTML+JS,没有服务器端脚本)。

我一直在查看 scores documentation遇到了this problem :您只能使用应用访问 token 提交分数。

为什么?

如果我错了,请纠正我,但似乎我无法获得应用程序访问 token ,除非我有应用程序 secret ,而且很明显我不应该将应用程序 secret 放在 javascript 中。对于大多数这些游戏,服务器端脚本是不可能的。所以我没有办法获得应用程序访问 token ,所以这些游戏都不能提交分数。

特别愚蠢的是,如果用户授予应用程序“publish_stream”权限,您可以自动按照“我刚刚在 MySuperGame 中获得 77777 分!”的字样创建一个墙贴。你可以只用纯 HTML+JS 来做到这一点。但是您不能发布分数。

我是不是遗漏了什么或者 API 对此有点愚蠢?

最佳答案

因为客户端可以向服务器发送它想要的任何信息,所以最好不要信任它。由于分数通常是一种客观判断玩家水平的方式,让玩家自己决定分数会直接破坏分数的功能。所以分数是由一个独立的一方决定的;服务器。

如果Facebook不需要access_token,其他游戏就很难保证分数。您可以要求 Facebook SDK 开发人员为 F​​acebook SDK 添加一个不安全的替代方法,但调整您的游戏以使用安全方法可能更容易。

我会建议创建一个系统,将玩家做出的选择发送到服务器,在那里检查他们,然后计算分数并发送到 Facebook。对于简单的测验,这些选择只是选择的答案,在复杂的 3d 游戏中,它们可能包括所有运动和与世界的互动。

如果大量的服务器脚本真的不可能,您可以将其减少到服务器上的一个脚本,将客户端发送的分数中继到 Facebook。

关于javascript - 为什么不能在 Javascript 中通过 Scores API 发布分数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7829312/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com