gpt4 book ai didi

javascript - 禁用 gmail api 请求缓存

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:00:51 26 4
gpt4 key购买 nike

我正在使用 javascript gmail api 来使用 threadId 获取电子邮件线程。我正在使用以下代码:

var request = gapi.client.gmail.users.threads.get({
'userId': 'me',
'id': '123abc'
});

request.execute(function(response) {

var messages = response.messages;

});

第一次对于特定的 threadId 它工作正常。对于进一步的请求,即使线程有更多电子邮件,它也会返回相同数量的消息。但是,如果我从 Chrome 开发人员工具 - 网络选项中清除 gapi url 的浏览器缓存,响应会提供正确数量的电子邮件。

例子:

-> 执行了带有 threadId '123abc' 的请求,目前该线程中有 3 封电子邮件。 response.messages 的请求响应长度为 3 是正确的.

-> 然后我又发了一封电子邮件作为对该线程的回复,然后再次执行相同的请求。但是对于 response.messages 的响应仍然是长度为 3 的旧响应。 .

-> 尝试多次运行相同的请求但得到相同的响应。

-> 然后清除该 url 的浏览器缓存并再次请求,现在响应是正确的,长度为 4 for response.messages .

尝试在 html 页面中添加以下元标记,但没有成功:

<meta http-equiv='cache-control' content='no-cache'>
<meta http-equiv='expires' content='0'>
<meta http-equiv='pragma' content='no-cache'>

尝试在页面 url 和请求中添加一个随机数,但没有成功。

尝试使用 gapi 脚本链接添加随机数,但没有成功 <script src="https://apis.google.com/js/client.js?onload=AuthIt&cacheBurster=123123123123"></script>

是否有任何代码可以禁用 gapi 请求缓存或任何其他方法来解决此问题?

最佳答案

最后通过在gapi请求中的'metadataHeaders'字段中添加一个随机数得到了解决方案:

var request = gapi.client.gmail.users.threads.get({
'userId': 'me',
'id': '123abc',
'metadataHeaders': Math.random()
});

关于javascript - 禁用 gmail api 请求缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38869484/

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