我正在尝试在日历应用中使用Google日历。我想让用户在app日历中同步他的Google日历活动。这是我的代码
<script async defer src="https://apis.google.com/js/api.js"
onload="this.onload=function(){};handleClientLoad()"
onreadystatechange="if (this.readyState === 'complete') this.onload()">
</script>
<script>function handleClientLoad()
{
gapi.load('client:auth2', initClient);
}
function initClient() {
gapi.client.init({
discoveryDocs: DISCOVERY_DOCS,
clientId: CLIENT_ID,
scope: SCOPES
}).then(function(){
loadEvents();
})
}
function loadEvents()
{
gapi.client.calendar.events.list({
'calendarId': '<?=$option['selected']?>',
'timeMin': (new Date()).toISOString(),
'showDeleted': false,
'singleEvents': true,
'maxResults': 10,
'orderBy': 'startTime'
}).then(function(response) {
var gEvents = response.result.items;
})
对我来说它工作正常,但对于用户显示授权错误。我该如何解决呢?我需要为用户发送授权密钥。
答案 0 :(得分:0)
如果您遇到授权问题,可以查看these分。您的错误已在文档中指定,可通过以下方式解决:
- 使用长期刷新令牌获取新的访问令牌。
- 如果此操作失败,请引导用户完成OAuth流程,如Authorizing requests with OAuth 2.0。
中所述- 如果您在服务帐户中看到此信息,请检查您是否已成功完成service account page中的所有步骤。