google 日历表通知获取 nul

google calendar watch notification getting nul

您好,已在 google 日历上设置手表

$channelID = "my-caledar-".  date('His',  time()); 
$channel->setId($channelID);
$channel->setType('web_hook');
$channel->setAddress('xxxxx');

并在调用此方法后获得有效参数

并且当我 create/delete 日历上的任何事件时,我在推送通知中收到空值 url

if($_POST){
$msg = json_encode($_POST);
pg_query($pg_conn, "INSERT INTO postdata(post_data) values ('$msg')");
} else {
  $result = pg_query($pg_conn, "SELECT * FROM postdata;");
}

$result 字段为空

通知没有出现url作为POST参数,我们可以像这样通过$_SERVER变量得到它

$msg = json_encode(array('HTTP_X_GOOG_CHANNEL_ID' =>  $_SERVER['HTTP_X_GOOG_CHANNEL_ID'],
'HTTP_X_GOOG_CHANNEL_EXPIRATION' => $_SERVER['HTTP_X_GOOG_CHANNEL_EXPIRATION'],
'HTTP_X_GOOG_RESOURCE_STATE' => $_SERVER['HTTP_X_GOOG_RESOURCE_STATE'],
'HTTP_X_GOOG_MESSAGE_NUMBER' => $_SERVER['HTTP_X_GOOG_MESSAGE_NUMBER'],
'HTTP_X_GOOG_RESOURCE_ID' => $_SERVER['HTTP_X_GOOG_RESOURCE_ID'],
'HTTP_X_GOOG_RESOURCE_URI' => $_SERVER['HTTP_X_GOOG_RESOURCE_URI']
));