2015-03-11 16 views
5

Sto cercando di aggiornare Google evento del calendario, ma non sta funzionando con il calendario di default .. voglio dire quando uso 'primaria' calendario predefinito non funziona questo è il mio codiceErrore durante l'aggiornamento di Google evento

const USER_EVENT_TYPE='primary'; 
 
const CLASS_EVENTS='Events'; 
 
if ($googleClient->getAccessToken()) 
 
     { 
 
      if(!class_exists(self::CLASS_EVENTS)) 
 
      { 
 
       $includeApplicationFiles=Mage::getBaseDir(self::LIBRARY_PATH); 
 
       foreach (glob($includeApplicationFiles.self::INCLUDE_ALL_FILES) as $retrieveFiles) 
 
       { 
 
        include $retrieveFiles; 
 
       } 
 
       $allCalendarEvents = $googleCalendar->events->listEvents(self::USER_EVENT_TYPE); 
 
       foreach ($allCalendarEvents->getItems() as $getSingleEvent) { 
 
        if($selectedEventValue==$getSingleEvent->summary) 
 
        { 
 
         $getSingleEvent->setSummary($selectedEventValue); 
 
         $addEventGuests = new Google_EventAttendee(); 
 
         $addEventGuests->setEmail($selectGuestValue); 
 
         $invitedGuests = array($addEventGuests); 
 
         $getSingleEvent->attendees = $invitedGuests; 
 
         $updatedEvent = $googleCalendar->events->update(self::USER_EVENT_TYPE, $getSingleEvent->getId(),$getSingleEvent); 
 
        } 
 
       } 
 
      } 
 
     }

Avere errore come questo

<br /> 
<b>Fatal error</b>: Uncaught exception 'Google_ServiceException' with message 'Error calling PUT https://www.googleapis.com/calendar/v3/calendars/primary/events/5vmet3i6mmak81utnj2p0ebv8g?key=900220817963%40developer.gserviceaccount.com: (403) Forbidden' in C:\xampp\htdocs\magento\lib\google-api-php-client\src\io\Google_REST.php:61 
Stack trace: 
#0 C:\xampp\htdocs\magento\lib\google-api-php-client\src\io\Google_REST.php(35): Google_REST::decodeHttpResponse(Object(Google_HttpRequest)) 
#1 C:\xampp\htdocs\magento\lib\google-api-php-client\src\service\Google_ServiceResource.php(152): Google_REST::execute(Object(Google_HttpRequest)) 
#2 C:\xampp\htdocs\magento\lib\google-api-php-client\src\contrib\Google_CalendarService.php(591): Google_ServiceResource-&gt;__call('update', Array) 
#3 C:\xampp\htdocs\magento\app\code\local\Social\Google\Model\Google.php(360): Google_EventsServiceResource-&gt;update('primary', '5vmet3i6mmak81u...', Object(Google_Event)) 
#4 C:\xampp\htdocs\magento\Connectors\google\AutoCompleteCalendarEvents.php(16): Social_Goog in <b>C:\xampp\htdocs\magento\lib\google-api-php-client\src\io\Google_REST.php</b> on line <b>61</b><br /> 
+0

(403) Vietato: C'è qualcosa che non va con la vostra autenticazione a cui non avete accesso se lo vedete. – DaImTo

risposta

0

Senza vedere tutto il codice che vorrei fare tw o suggerimenti:

È possibile aggiornare la chiave e controllare le impostazioni nella console di sviluppo. Se hai cambiato il tuo spazio dei nomi del progetto e hai usato la stessa chiave, puoi avere dei problemi.

L'altra cosa è se è stata impostata la chiave di sviluppatore ovunque per eliminare tale:

$googleClient->setDeveloperKey('insert_key'); 

Se avete un letto attraverso il seguente link, mostra una serie di problemi simili.

https://code.google.com/p/google-api-php-client/issues/detail?id=218

devo aggiungere, che 403 Forbidden indica che si sta comunicando con il server con successo, ma ti manca il permesso per l'azione/operazione.
Ecco perché si sporge verso:
1. la chiave non è valida, oppure
2. se la chiave è valida e il valore della chiave valida è stato sostituito nel codice. Presentando così un nuovo valore, che (ovviamente) è una chiave non valida.

Fammi sapere se hai bisogno di ulteriore aiuto.

Problemi correlati