javascript - 在 Google 上下文小工具中保存用户偏好

标签 javascript jquery gmail-contextual-gadgets

我正在写一个 gmail contextual gadget . 穿越这个雷区后,我陷入了一个似乎没有其他人有的问题,我的 UserPreferences 只在页面刷新时保存,如果我只是导航回收件箱和另一封电子邮件,他们就会被遗忘。 我启用了用户首选项:

<Require feature="setprefs"/>

它们看起来像这样:

<UserPref name="enabled"
    datatype="hidden"
    default_value="true">
</UserPref>

我已经尝试使用和不使用模块 ID 来初始化我的首选项:

var prefs = new gadgets.Prefs();

var prefs = new gadgets.Prefs(__MODULE_ID__);

我什至在 iframe/gadget 上用 javascipt 强制刷新,但这也不起作用,让我相信问题出在谷歌为我缓存旧数据并且在页面关闭之前不保存它,如果那有任何意义。

我在我的 url 中使用 /?nogadgetcache=1/

最佳答案

好吧,我不期待答案,所以这是我对遇到此问题的其他人的解决方案:

Google 在浏览收件箱、已发送邮件、垃圾邮件、个人邮件等时确实缓存了 UserPrefs 的所有数据。

保存 UserPrefs 后,它们会正确发送到 Google 的服务器,但最后一次提取将保留在缓存中,因此无法绕过刷新。除非必要,否则我减少了对 UserPrefs 的使用,并礼貌地通知用户刷新以查看更改是否生效。

没有关于此的文档,也许 Google 将来会对此进行更改,因此如果有人找到解决方案,请为了社区的利益将其发布在这里。 谢谢

关于javascript - 在 Google 上下文小工具中保存用户偏好,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16966433/

相关文章:

javascript - 将由 SQL 构建的 JSON 对象从 PHP 传递到 JavaScript

javascript - 暂停除激活的玩家之外的所有其他玩家。 <audio> 元素的 jQuery 音频插件

javascript - PHP:如何正确回显类和 id 以供 jQuery 呈现

jquery - 选择包含特定文本的 DIV

gmail - 从 Gmail API 发送的电子邮件将进入垃圾邮件

gmail - Google Gmail 上下文小工具示例

gmail-contextual-gadgets - Gmail 上下文小工具损坏

javascript - 如何检查值/参数/资源是否是 Node 中的可写流

javascript - 导入自调用函数

javascript - $.Deferred().promise 与 $.get().promise