【发布时间】:2021-12-28 17:51:28
【问题描述】:
假设我有一个用 JavaScript 编写的测验。每个问题有四种不同的可能答案。参与者一个一个点击完成测验,他可以随时取消它。
现在我想保存用户的点击路径,包括各自的时间戳。我的想法是将点击路径记录为 JavaScript 对象,并通过 AJAX 将此对象传输到服务器,并在每次点击后将其保存在 JSON 文件中。这有意义吗?
在我看来,棘手的事情是 (1) 为第二次点击后的每次点击在测验会话(无会话 cookie)中更新正确的对象(JSON 文件中的正确行)和(2 ) 为新的测验会话附加一个新对象,如果可能的话,无需每次都读取和重写整个 JSON 文件。
感谢您的意见和想法。
编辑:我可以控制后端并且我正在使用 PHP。
【问题讨论】:
-
无需动态更新文件。将数据保存在对象中,然后使用
JSON.stringify将对象转换为 JSON。然后将其发送到服务器进行保存。 -
但是由于参与者可以随时取消测验,我需要在每次单击后保存对象。
-
我猜它不需要用户的明确操作来“取消”,然后呢?基本上他们可以随时退出标签或点击后退按钮取消?
-
阿贾克斯。 ajax 是您向服务器发送数据的方式。
-
@KevinB 哈哈。
[{"You'd": ["hate", "the", "way"], "I": {"work": "then", "since": {"I": "write", "JSON": ["by", "hand"]}}}, "all", "the", "time"]。不过,诚然,如果我在计算上更新JSON,我将始终首先更新JSON.parse()或json_decode()。我不会将其编辑为字符串。
标签: javascript php json ajax