javascript - 在公共(public)日历中插入事件时,Google 日历 API 返回错误 401 'login required'

标签 javascript ajax api google-calendar-api

我想使用以下代码在我的一个公共(public)日历中插入一个事件

var mykey = '273183670752-8419q1upedso5lc0hvtgfnbv32rd67um.apps.googleusercontent.com';
var calendarid = '7a97f6k4ok8v77jc2po6kkgcuo%40group.calendar.google.com';  
var meeting = 'Lunchafspraak 2 juli om 13:00';
var urlContent = 'https://www.googleapis.com/calendar/v3/calendars/' + calendarid + '/events/quickAdd?text=' + meeting + '&key=' + mykey;

$.ajax({
    type: 'POST',
    url: urlContent,
    dataType: 'json',
    success: function (response) {
        alert("Event toegevoegd");
    },
    error: function (response) {
        alert(response.error.errors);
        alert("Event niet toegevoegd");
    }
});

但它返回错误 401“需要登录”

我做错了什么,如何解决这个问题?

最佳答案

错误401 'login required'意味着您使用的访问 token 已过期或无效。如本 forum 中所述,您需要使用客户端 ID 和客户端 key 获取刷新 token ,以进行经过身份验证和授权的 API 调用。确保在生成刷新 token 时使用正确的电子邮件登录。在这种情况下,它将是您自己的用户电子邮件地址,而不是服务帐户电子邮件地址。服务帐户电子邮件地址用于服务器到服务器应用程序。

检查这些链接:

希望这有帮助!

关于javascript - 在公共(public)日历中插入事件时,Google 日历 API 返回错误 401 'login required',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38167295/

相关文章:

javascript - 使用 lodash 将对象转换为数组

jquery - AJAX 不解析 jsonp 响应

api - 如何在 Katalon 中使用 setBodyContent(HttpBodyContent)

javascript - 如何停止函数内部的 Ajax 调用

javascript - 使用 REST 服务和 Javascript 存储 token 的 Linkedin 登录

javascript - 检查多个 ajax 请求完成时我应该应用什么设计模式?

jQuery 如何在表单提交上查找按钮值

css - HTTParty 类中未定义的方法

javascript - 如何将列表与新的 api 调用结果交换?

javascript - 带有 ajax slider 扩展控件的 asp.net 控件 2 文本框