Php 谷歌日历API为每个服务调用返回500个错误代码

Php 谷歌日历API为每个服务调用返回500个错误代码,php,google-calendar-api,Php,Google Calendar Api,我正在为一个预订应用程序开发一个谷歌日历集成,该应用程序允许管理员批准/拒绝预订。当预订被批准时,它需要在一个特定的谷歌日历中插入一个事件,该日历跟踪所有预订。为此,在阅读文档后,我决定使用一个服务帐户,并将其设置为可以修改日历及其事件 然而,在提交任何服务请求时,我收到了一个错误,状态代码为500,并且没有进一步解释过程中出现了什么错误 我尝试调用不同的方法,例如列出事件、插入新事件等,但所有方法都以相同的方式失败。我仔细检查了JSON文件,其中包含服务帐户凭据、执行操作所需的作用域以及我预先

我正在为一个预订应用程序开发一个谷歌日历集成,该应用程序允许管理员批准/拒绝预订。当预订被批准时,它需要在一个特定的谷歌日历中插入一个事件,该日历跟踪所有预订。为此,在阅读文档后,我决定使用一个服务帐户,并将其设置为可以修改日历及其事件

然而,在提交任何服务请求时,我收到了一个错误,状态代码为500,并且没有进一步解释过程中出现了什么错误

我尝试调用不同的方法,例如列出事件、插入新事件等,但所有方法都以相同的方式失败。我仔细检查了JSON文件,其中包含服务帐户凭据、执行操作所需的作用域以及我预先设置的服务帐户。在使用$client初始化后检查$service的内容,返回的信息包含有关允许服务帐户使用的特定Google日历的正确数据,这使我认为自动加载程序和凭据设置是正确的

session_start();
require_once('./XXX-1234/vendor/autoload.php');

$client = new Google_Client();

$application_creds = './XXX-1234/.json';
$credentials_file = file_exists($application_creds) ? $application_creds : false;
$client->setAuthConfig($credentials_file);
$client->setApplicationName('XXX-1234');
$client->addScope('https://www.googleapis.com/auth/calendar');
$client->addScope('https://www.googleapis.com/auth/calendar.readonly');
$client->addScope('https://www.googleapis.com/auth/calendar.events');
$client->addScope('https://www.googleapis.com/auth/calendar.events.readonly');

$service = new Google_Service_Calendar($client);

$calendarId = 'primary';
$event = new Google_Service_Calendar_Event(array(
    'summary' => 'Test Event',
    'start' => array(
        'dateTime' => '2019-04-24T00:12:00+02:00',
        'timeZone' => 'Europe/Budapest',
    ),
    'end' => array(
        'dateTime' => '2019-04-24T00:13:00+02:00',
        'timeZone' => 'Europe/Budapest',
    ),
));
$event = $service->events->insert($calendarId, $event);

最后一行执行失败,错误为500,而不是正确插入事件。问题是,这里到底是什么问题?我如何才能更好地调试问题的原因?

检查服务器错误日志,看看是否有任何问题。我不确定,但您可以尝试删除“只读”作用域。它已经具有读/写访问权限,请检查服务器错误日志以查看是否有任何内容。我不确定,但您可以尝试删除“只读”作用域。它已具有的读/写访问权限