[英]Google Calendar API v3 quickAdd fail
首先,我可以通过输入“ calendarId”和“ text”参数从Google API网页https://developers.google.com/google-apps/calendar/v3/reference/events/quickAdd#try-it成功添加事件
但是我无法使用“ quickAdd” API通过使用PHP在Google日历中添加事件。
require_once "google-api-php-client/src/Google/Client.php";
require_once "google-api-php-client/src/Google/Service/Calendar.php";
// Service Account info
$calName = 'dcm2p5gkf3ge1r7k78f0ko28tc@group.calendar.google.com';
$client_id = '759399732845-j93sis8dktkdj00l3b8mn7gjs3ncf6b9.apps.googleusercontent.com';
$service_account_name = '759399732845-j93sis8dktkdj00l3b8mn7gjs3ncf6b9@developer.gserviceaccount.com';
$key_file_location = 'SMSProject-f14380ee82e4.p12';
$client = new Google_Client();
$client->setApplicationName("SMSProject");
$service = new Google_Service_Calendar($client);
$key = file_get_contents($key_file_location);
$cred = new Google_Auth_AssertionCredentials($service_account_name, array('https://www.googleapis.com/auth/calendar'), $key);
$client->setAssertionCredentials($cred);
$createdEvent = $service->events->quickAdd('primary', 'Appointment at Somewhere on January 23rd 10am-10:25am');
echo $createdEvent->getId();
事件ID“ g69tq9k7s38rfgit1mpnit9bpk”可以在浏览器中回显,但日历中未显示任何事件
如果我改变
$createdEvent = $service->events->quickAdd('primary', 'Appointment at Somewhere on January 23rd 10am-10:25am');
至
$createdEvent = $service->events->quickAdd($calName, 'Appointment at Somewhere on January 23rd 10am-10:25am');
无法生成事件ID,并在错误消息下方显示
调用POST https://www.googleapis.com/calendar/v3/calendars/dcm2p5gkf3ge1r7k78f0ko28tc%40group.calendar.google.com/events/quickAdd时出错:(404)未找到
我需要使用“ quickAdd”而不是“ insert” API。 如何解决问题? 谢谢!
我遇到了同样的问题,但是后来我发现它实际上是在服务帐户xxxxxxx@developer.gserviceaccount.com的日历中而不是我的个人日历中创建事件。 如果您希望它在您使用的个人日历中创建事件,请进入个人日历的设置并与您的服务帐户xxxxxxx@developer.gserviceaccount.com共享它,那么您应该可以使用...
$createdEvent = $service->events->quickAdd($calName, 'Appointment at Somewhere on January 23rd 10am-10:25am');
...而不是“主要”
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.