我試圖執行使用到谷歌日曆API的捲曲請求,上面寫着:插入事件,谷歌日曆使用PHP
POST https://www.googleapis.com/calendar/v3/calendars/{name_of_my_calendar}/events?sendNotifications=true&pp=1&key={YOUR_API_KEY}
Content-Type: application/json
Authorization: OAuth 1/SuypHO0rNsURWvMXQ559Mfm9Vbd4zWvVQ8UIR76nlJ0
X-JavaScript-User-Agent: Google APIs Explorer
{
"start": {
"dateTime": "2012-06-03T10:00:00.000-07:00"
},
"end": {
"dateTime": "2012-06-03T10:20:00.000-07:00"
},
"summary": "my_summary",
"description": "my_description"
}
我應該怎麼做,在PHP?我想知道我應該發送什麼參數以及我應該使用哪些常量。目前,我正在做的:
$url = "https://www.googleapis.com/calendar/v3/calendars/".urlencode('{name_of_my_calendar}')."/events?sendNotifications=true&pp=1&key={my_api_key}";
$post_data = array(
"start" => array("dateTime" => "2012-06-01T10:00:00.000-07:00"),
"end" => array("dateTime" => "2012-06-01T10:40:00.000-07:00"),
"summary" => "my_summary",
"description" => "my_description"
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
// adding the post variables to the request
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
$output = curl_exec($ch);
curl_close($ch);
但響應:
{
error: {
errors: [
{
domain: "global",
reason: "required",
message: "Login Required",
locationType: "header",
location: "Authorization"
}
],
code: 401,
message: "Login Required"
}
}
我應該如何格式化我的參數?
您是否閱讀了https://developers.google.com/google-apps/calendar/auth? – Daan 2012-04-19 08:44:17
是的,我的代碼只用於解析來自同一日曆的事件的示例。 – Gustav 2012-04-19 08:46:12
嗯。不知道,我以前從未使用過此API。你可能想試試官方的PHP API包:http://code.google.com/p/google-api-php-client/希望這會有所幫助! – Daan 2012-04-19 17:45:52