首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >PHP -无法使用API键创建新的事件

PHP -无法使用API键创建新的事件
EN

Stack Overflow用户
提问于 2019-07-24 18:32:19
回答 1查看 372关注 0票数 1

我试图只使用我创建的API Key插入一个新事件。

问题是,当我只是使用FreeBusy检查可用时间时,一切都很正常,但是当我试图创建和插入一个新事件时,我会得到以下错误:

代码语言:javascript
运行
复制
Uncaught Google_Service_Exception: {
 "error": {
  "errors": [
   {
    "domain": "global",
    "reason": "required",
    "message": "Login Required",
    "locationType": "header",
    "location": "Authorization"
   }
  ],
  "code": 401,
  "message": "Login Required"
 }
}

在对Google Calendar API页面的授权请求中,声明:

应用程序必须使用OAuth 2.0来授权请求。不支持其他授权协议。如果您的应用程序使用Google登录,授权的某些方面将为您处理。

但我不能在每次请求时手动授权访问日历。

我如何授权请求并插入新事件而不必手动授权它们?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-07-24 18:45:15

如果要执行服务器对服务器的API请求,则需要使用服务帐户。请看https://developers.google.com/calendar/auth

通常,您会创建一个密钥,并下载所提供的JSON文件。然后您可以调用$client->setAuthConfig($jsonPath);来设置身份验证。将私钥保存在web根目录之外可能是个好主意。然后使用$client->addScope('https://www.googleapis.com/auth/calendar')设置作用域,并使用$service = new Google_Service_Calendar($client);实例化Calendar服务。你现在应该可以做你的事情了。

您还可能需要将日历与与服务帐户相关联的生成的电子邮件地址共享。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57189226

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档