我正在使用JavaScript Gmail API来获取邮件线程,使用的是threadId。
我正在使用以下代码:
针对一个特定的线程Id,第一次请求返回了正确的结果。但是在后续请求中,即使该线程有更多的邮件,也仅返回相同数量的邮件。 然而,如果我在Chrome开发人员工具-网络选项中清除gapi url的浏览器缓存,则响应会给出正确的电子邮件数量。
例如: -> 使用线程Id“123abc”执行请求,目前此线程包含3封电子邮件。请求的响应是正确的,
var request = gapi.client.gmail.users.threads.get({
'userId': 'me',
'id': '123abc'
});
request.execute(function(response) {
var messages = response.messages;
});
针对一个特定的线程Id,第一次请求返回了正确的结果。但是在后续请求中,即使该线程有更多的邮件,也仅返回相同数量的邮件。 然而,如果我在Chrome开发人员工具-网络选项中清除gapi url的浏览器缓存,则响应会给出正确的电子邮件数量。
例如: -> 使用线程Id“123abc”执行请求,目前此线程包含3封电子邮件。请求的响应是正确的,
response.messages
的长度为3。
-> 然后,我向此线程发送了一封电子邮件作为回复,然后再次执行相同的请求。但是响应仍然是旧的,response.messages
的长度为3。
-> 尝试多次运行相同的请求,但得到相同的响应。
-> 然后清除了这个url的浏览器缓存并重新请求,现在响应是正确的,response.messages
的长度为4。
尝试将以下元标记添加到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请求缓存的代码或其他方法来解决此问题?
metadata
格式,根据metadataHeaders文档,您将不会在响应中获得任何标头。 - Tholle