2015-04-09 7 views
0


Я попытался отправить запрос для создания события в выбранном календаре. Но я получил ошибку:Катушка gozz и api

Client error response [url] https://www.googleapis.com/calendar/v3/calendars/caledar_id/events?key=ya29.UAFgEsvgZ34RYc9CJS92FVyT6uUz68-xm8gMhIk0hShHp4esU29eRjWWd0wU-8uyzEEQNwXNdmQ [status code] 400 [reason phrase] Bad Request 

Я использовал жрать API (http://docs.guzzlephp.org/en/latest/). Имеется образец моего кода:

$url = 'https://www.googleapis.com/calendar/v3/calendars/'. $calendar_id .'/events'; 
$client = new GuzzleHttp\Client(); 
$data = json_encode(array(
    "end" => array("date" => "2015-04-12"), 
    "start" => array("date" => "2015-04-09"), 
    "summary" => "testnah" 
)); 
$response = $request = $client->post($url, [ 
    'body' => $data, 
    'query' => [ 
     'key' => $token 
    ], 
    'headers' => ['Authorization' => $token_type . ' ' . $token] 
]); 
var_dump($response); 

Спасибо большое!

+0

Вы изменили код календаря, исправить? «primary» вместо «calendar_id»? https://www.googleapis.com/calendar/v3/calendars/primary/events –

+0

Да, просто я спрятал свой настоящий идентификатор календаря –

+0

Включил ли вы httpMethod '=>' GET 'при отправке запроса на event.list? – SGC

ответ

0

Я стараюсь не включать ключ в запрос и включить режим отладки. Отладочный журнал:

  • About to connect() to www.googleapis.com port 443 (#0) * Trying 173.194.71.95... * 0x32b54f0 is at send pipe head! * STATE: CONNECT => WAITCONNECT handle 0x32c8700; (connection #0) * Connected to www.googleapis.com (173.194.71.95) port 443 (#0) * Connected to www.googleapis.com (173.194.71.95) port 443 (#0) * successfully set certificate verify locations: * CAfile: none CApath: /etc/ssl/certs * STATE: WAITCONNECT => PROTOCONNECT handle 0x32c8700; (connection #0) * SSL connection using ECDHE-RSA-AES128-GCM-SHA256 * Server certificate: * subject: C=US; ST=California; L=Mountain View; O=Google Inc; CN=*.storage.googleapis.com * start date: 2015-03-25 14:50:25 GMT * expire date: 2015-06-23 00:00:00 GMT * subjectAltName: www.googleapis.com matched * issuer: C=US; O=Google Inc; CN=Google Internet Authority G2 * SSL certificate verify ok. * STATE: PROTOCONNECT => DO handle 0x32c8700; (connection #0) > POST /calendar/v3/calendars/[email protected]/events HTTP/1.1 Host: www.googleapis.com Authorization: Bearer ya29.VQG9gHzGq7tfB14CtyOgYK_N5gYS-XA9AanDHi0FzOeOvzbJ6hwwTNeuNWuj-5uLvXScbq8PUjs7A User-Agent: Guzzle/5.2.0 curl/7.26.0 PHP/5.4.39-0+deb7u2 Content-Length: 79 * upload completely sent off: 79 out of 79 bytes * STATE: DO => DO_DONE handle 0x32c8700; (connection #0) * STATE: DO_DONE => WAITPERFORM handle 0x32c8700; (connection #0) * STATE: WAITPERFORM => PERFORM handle 0x32c8700; (connection #0) * additional stuff not fine transfer.c:1037: 0 0 * HTTP 1.1 or later with persistent connection, pipelining supported < HTTP/1.1 400 Bad Request < Vary: X-Origin < Content-Type: application/json; charset=UTF-8 < Date: Tue, 14 Apr 2015 15:24:26 GMT < Expires: Tue, 14 Apr 2015 15:24:26 GMT < Cache-Control: private, max-age=0 < X-Content-Type-Options: nosniff < X-Frame-Options: SAMEORIGIN < X-XSS-Protection: 1; mode=block < Server: GSE < Alternate-Protocol: 443:quic,p=0.5 < Accept-Ranges: none < Vary: Origin,Accept-Encoding < Transfer-Encoding: chunked < * STATE: PERFORM => DONE handle 0x32c8700; (connection #0) *