问题描述
我使用带有以下 background.js 的 chrome 扩展来调用 GMail API users.history.list 方法:
chrome.tabs.onUpdated.addListener( function (tabId,changeInfo,tab) {
if (changeInfo.status == 'complete') {
chrome.identity.getAuthToken({ 'interactive': true },function(token) {
thisToken = token
chrome.runtime.onMessage.addListener(
function(request,sender,sendResponse){
var userlist = "https://gmail.googleapis.com/gmail/v1/users/me/history?startHistoryId=<historyId>&access_token=" + thisToken
var makeGetRequest = function (gapiRequestURL)
{
var xmlHttp = new XMLHttpRequest();
xmlHttp.open( "GET",gapiRequestURL,false );
xmlHttp.send( null );
console.log(xmlHttp.responseText)
return xmlHttp.responseText;
}
makeGetRequest(userlist);
}
);
});
}
})
我得到的回复是这样的:
"history": [
{
"id": string,"messages": [
{
"id": string,"threadId": string
}
]
},
在 api 文档中显示的响应中:
{
"id": string,"messages": [
{
object (Message)
}
]
}
消息对象应具有以下字段:
{
"id": string,"threadId": string,"labelIds": [
string
],"snippet": string,"historyId": string,"internalDate": string,"payload": {
object (MessagePart)
},"sizeEstimate": integer,"raw": string
}
为什么我收到的消息对象中只有 id
和 threadId
?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)