我有一个需要一些外部信息才能使用的脚本。它使用Ajax请求获取此信息。到目前为止一切都很好。
但是,脚本从一开始就需要一些数据。所以我一直在思考一些选项,以便在页面加载时为它提供初始数据:
我正在尝试使用cookie来传输初始数据的第四个选项,但到目前为止还没有取得任何成功。我想做什么:
它不起作用。似乎我需要在.html的响应上设置cookie而不是浏览器的.js以使其可用于脚本...这太糟糕了,因为它会涉及添加Set-Cookie头到每个页面,即使它只是那个特定的JS需要。
我实际上对我认为找到的解决方案非常满意,因为它让我将初始数据连同脚本请求一起发送到那些实际使用脚本的页面......太糟糕了!
有没有办法做我尝试使用Cookie,标题或类似机制做的事情?
你们对这种情况有什么建议吗?
背景: 我正在尝试编写一个半离线应用程序。半离线,因为它应该在离线时继续工作(除了一些只需要连接的功能),但预计会有定期连接的时段。因此,我尽可能使用本地存储并与服务器同步。
为了能够让客户端在离线时生成新项目,我将包括一个ID生成器,由服务器分发ID块,在生成ID时使用它们。我试图在cookie中发送到脚本的数据是ID块的初始列表和一些设置,如下所示:
/suid/suid.json:3:3:dxb,dyb,dzb
^ ^ ^ ^
url min max blocks
其中:
url = path to JSON for subsequent Ajax requests
min = minimum amount of ID blocks to keep in local storage
max = maximum amount of ID blocks to keep in local storage
blocks = comma separated list of ID blocks
ID块被编码为Base32字符串的排序。我使用自定义格式架构,因为我希望53位ID在文本格式中尽可能短,同时仍然易于人类可读,可写和URL安全。