Google API日历问题PHP

时间:2017-10-04 08:27:48

标签: javascript php google-api calendar google-oauth2

我对谷歌api和stackoverflow都很陌生,所以请耐心等待。 所以,我已经设置了整个设置,以便从谷歌日历,授权,密钥和所有内容中获取事件。但是,无论如何,我都无法回复任何事件。我尝试了所有不同的日历,但没有一个给出任何不同的日历。我还发现这个方便的小工具绑定到我的服务帐户,它显示我实际到达服务器时,它总是这样做,以及它们中的哪一个导致错误。所以,似乎所有事情都运转得很好,但仍然没有事件到来。我有什么明显的遗失吗? 我试图制作新的日历,新活动,新帐户,只是完全重做一切。我也得到了更有经验的人的帮助,但无济于事。

事情已经完成:

  • 创建Google服务帐户
  • 在所述帐户中创建项目
  • 为所述项目创建凭据
  • 使用密钥和ID来下载JSON:s来自帐户和项目
  • 在代码中正确链接
  • 在我的主日历中创建不同类型的新活动
  • Bugfixing
  • 提出事件请求
  • 错误修正,直到google
  • 的日志中没有显示401或404
  • 仍然没有
  • 尝试在google
  • 的某个教程页面进行测试
  • 完美作品
  • ???

以下是Google图书馆以外所有内容的代码(也已正确安装) DIR_ROOT是我们自制的 DIR ,它将我们带到正确的文件夹



<?php
			require_once DIR_ROOT . '/vendor/autoload.php';
			define('SCOPES', implode(' ', array(
			  Google_Service_Calendar::CALENDAR)
			));

			putenv('GOOGLE_APPLICATION_CREDENTIALS=/var/www/html/Tv-Projektet-222309a0ac14.json');
			$client = new Google_Client();
			$client->useApplicationDefaultCredentials();
			$client->setScopes(SCOPES);

			$service = new Google_Service_Calendar($client);

			// Print the next 10 events on the user's calendar.
			$calendarId = 'primary';
			
			$optParams = array(
			  'maxResults' => 10,
			  'orderBy' => 'startTime',
			  'singleEvents' => true,
			  'timeMin' => date('c'),
			);

			$results = $service->events->listEvents($calendarId, $optParams);
			if (count($results->getItems()) == 0) {
			  print "No Hermes set for this day. Please update the calendar.\n";
			} else {
			  print "Upcoming events:\n";
			  foreach ($results->getIgtems() as $event) {
				$start = $event->start->dateTime;
				if (empty($start)) {
				  $start = $event->start->date;
				}
				printf("%s (%s)\n", $event->getSummary(), $start);
			  }
			}
			?>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:0)

因此,再过一周的测试,我发现组织帐户在这里不起作用。我不知道为什么,但是当我使用我的个人Gmail时,它运作得很好。