2011-11-11 1 views
0

API를 사용하여 Google 캘린더의 일정을 업데이트하는 데 문제가 있습니다. 여기에 설명 된대로 구현하려고합니다 : http://code.google.com/apis/calendar/data/2.0/developers_guide_protocol.html#UpdatingEventsGoogle 캘린더 업데이트 이벤트 - 클라이언트가 조작 된 또는 불법적 인 요청을했습니다.

요청에 어떤 헤더와 본문이 첨부되어야하는지 잘 모르겠습니다. 내가 보내고있다 헤더는 다음과 같습니다

Array 
(
[method] => PUT 
[uri] => Array 
    (
     [scheme] => https 
     [host] => www.google.com 
     [port] => 443 
     [user] => 
     [pass] => 
     [path] => /calendar/feeds/6okn9orqcq5kgd2ktssvq675k8%40group.calendar.google.com/private/full/8vpg1ha8oahin8l7k0svg8ktss_20111117T140000Z 
     [query] => Array 
      (
      ) 

     [fragment] => 
    ) 

[version] => 1.1 
[body] => {"apiVersion":"1.0","data":{"kind":"calendar#event","id":"8vpg1ha8oahin8l7k0svg8ktss_20111117T140000Z","selfLink":"https:\/\/www.google.com\/calendar\/feeds\/6okn9orqcq5kgd2ktssvq675k8%40group.calendar.google.com\/private\/full\/8vpg1ha8oahin8l7k0svg8ktss_20111117T140000Z","alternateLink":"https:\/\/www.google.com\/calendar\/event?eid=OHZwZzFoYThvYWhpbjhsN2swc3ZnOGt0c3NfMjAxMTExMTdUMTQwMDAwWiA2b2tuOW9ycWNxNWtnZDJrdHNzdnE2NzVrOEBn","canEdit":true,"title":"hihi","created":"2011-10-25T16:15:18.000Z","updated":"2011-11-10T13:54:27.000Z","details":"titel: \"Paintball vrouwen evenement\"\nbeschrijving: \"Dit evenement is enkele voor vrouwen\"\npersonen: \"33\"\ngroepen: \"12\"\nstatus: \"auto\"\npopulair: \"nee\"\n","status":"confirmed","creator":{"displayName":"[email protected]","email":"[email protected]"},"anyoneCanAddSelf":false,"guestsCanInviteOthers":true,"guestsCanModify":false,"guestsCanSeeGuests":true,"sequence":2,"transparency":"opaque","visibility":"private","location":"Paintball","attendees":[{"rel":"organizer","displayName":"website","email":"[email protected]"}],"when":[{"start":"2011-11-17T10:00:00.000Z","end":"2011-11-17T12:00:00.000Z"}],"originalEvent":{"href":"http:\/\/www.google.com\/calendar\/feeds\/6okn9orqcq5kgd2ktssvq675k8%40group.calendar.google.com\/private\/full\/8vpg1ha8oahin8l7k0svg8ktss","id":"8vpg1ha8oahin8l7k0svg8ktss","start":"2011-11-17T14:00:00.000Z"}}} 
[line] => PUT /calendar/feeds/6okn9orqcq5kgd2ktssvq675k8%40group.calendar.google.com/private/full/8vpg1ha8oahin8l7k0svg8ktss_20111117T140000Z HTTP/1.1 

[header] => Host: www.google.com 
Connection: close 
User-Agent: CakePHP 
Content-Type: application/json 
If-Match: * 
Content-Length: 1457 

[raw] => PUT /calendar/feeds/6okn9orqcq5kgd2ktssvq675k8%40group.calendar.google.com/private/full/8vpg1ha8oahin8l7k0svg8ktss_20111117T140000Z HTTP/1.1 
Host: www.google.com 
Connection: close 
User-Agent: CakePHP 
Content-Type: application/json 
If-Match: * 
Content-Length: 1457 

{"apiVersion":"1.0","data":{"kind":"calendar#event","id":"8vpg1ha8oahin8l7k0svg8ktss_20111117T140000Z","selfLink":"https:\/\/www.google.com\/calendar\/feeds\/6okn9orqcq5kgd2ktssvq675k8%40group.calendar.google.com\/private\/full\/8vpg1ha8oahin8l7k0svg8ktss_20111117T140000Z","alternateLink":"https:\/\/www.google.com\/calendar\/event?eid=OHZwZzFoYThvYWhpbjhsN2swc3ZnOGt0c3NfMjAxMTExMTdUMTQwMDAwWiA2b2tuOW9ycWNxNWtnZDJrdHNzdnE2NzVrOEBn","canEdit":true,"title":"hihi","created":"2011-10-25T16:15:18.000Z","updated":"2011-11-10T13:54:27.000Z","details":"titel: \"Paintball vrouwen evenement\"\nbeschrijving: \"Dit evenement is enkele voor vrouwen\"\npersonen: \"33\"\ngroepen: \"12\"\nstatus: \"auto\"\npopulair: \"nee\"\n","status":"confirmed","creator":{"displayName":"[email protected]","email":"[email protected]"},"anyoneCanAddSelf":false,"guestsCanInviteOthers":true,"guestsCanModify":false,"guestsCanSeeGuests":true,"sequence":2,"transparency":"opaque","visibility":"private","location":"Paintball","attendees":[{"rel":"organizer","displayName":"website","email":"[email protected]"}],"when":[{"start":"2011-11-17T10:00:00.000Z","end":"2011-11-17T12:00:00.000Z"}],"originalEvent":{"href":"http:\/\/www.google.com\/calendar\/feeds\/6okn9orqcq5kgd2ktssvq675k8%40group.calendar.google.com\/private\/full\/8vpg1ha8oahin8l7k0svg8ktss","id":"8vpg1ha8oahin8l7k0svg8ktss","start":"2011-11-17T14:00:00.000Z"}}} 
[cookies] => Array 
    (
    ) 

[proxy] => Array 
    (
    ) 

[auth] => Array 
    (
    ) 

)

이 내가 400 개 상태 얻는 반응이다 :

'header' => array(
    'Content-Type'  => 'application/json', 
    'If-Match'  => '*', 
    'GData-Version'  => 2 
) 

basicly이 내 요청입니다

귀하 고객이 조작 된 또는 불법적 인 요청을 보냈습니다.

그래서 분명히 뭔가 잘못하고있는 사람이 누구인지 알 수 있습니까?

답변

0

배치 한 PHP 태그 때문에 PHP를 사용하고 있다고 가정합니다. Zend Gdata 프레임 워크를 사용하고 있습니까? 그렇다면 여기에 더 많은 정보가 있습니다 : https://code.google.com/apis/calendar/data/1.0/developers_guide_php.html

save() 메소드를 사용하고 있습니까?

사용중인 코드를 제공 할 수 있습니까? 이 정답을 수정하면 수정 된 버전의 업데이트가 제공됩니다.

+0

문제는 Oauth와 관련이 있으며 URL의 매개 변수와 관련이 있습니다. Cakephp 2.0을 사용하여 젠드 Gdata 프레임 워크를 사용할 수 없습니다. 이 문제는 Oauth를 올바른 방법으로 사용하여 해결됩니다. 나는 또 다른 문제가 : http://stackoverflow.com/questions/8099880/google-api-with-params-gives-unknown-authorization-header – Melvin