在 LUA 中,您可以使用 Loadstrings 加载 HTTP 请求,它可以从任何链接获取数据。
我注意到,由于使用这些加载字符串脚本的“roblox 黑客”社区庞大,因此在互联网上查找这些“加载字符串”非常烦人。
所以很难找到...相关...信息
所以我想问问这里的人,我可以在我的lua loadstring中支持一个DataURL吗?我正在运行一个没有插件的简单 lua 环境。(基本上我希望能够使用从另一个站点获取数据的小型“base64 网页”加载外部脚本,但如果在线站点出现故障,则始终有一个备份离线密钥,因此是一个数据 URL)
虽然当然可以使用 loadstring 从外部源运行 Lua 代码,但这不是很好的做法。从 Internet 执行任意代码通常是不安全的。如果提供这些文件的服务器遭到黑客攻击,所有客户端都将受到威胁。第二个问题是,如果客户端运行的是旧版本,则来自服务器的任何代码编码都可能失败,因此更新和保持同步将是一场噩梦。更好的方法是从服务器发送纯数据。您不希望您的服务器知道有关客户端的任何信息。如果您绝对必须使用 loadstring,那么至少要确保使用 setfenv 将其沙盒化:
您不需要在 base64 中编码任何内容。只需确保您的服务器标头正确即可。在 PHP 中看起来像:
关于您的 DataURLs 问题,请注意您也可以从服务器获取二进制数据(在这种情况下您不需要加载字符串)。从服务器获取文件后,您可以将其保存在 AppData 目录中,并在需要时进行更新。