Sto cercando di accedere a un calendario pubblico (da Google Calendar) che contiene le festività nazionali:Accesso a Google Calendar API senza autorizzazione tramite JavaScript
calendarId: 'pt_br.brazilian#[email protected]'
come il calendario è pubblico, ho pensato di essere in grado di accedervi utilizzando solo l'API Key:
function OnLoadCallback() {
var config = {
client_id: '32j4lk32j5kj342l5h.googleuser.com', //fake client id
scope: 'https://www.googleapis.com/auth/calendar.readonly'
};
gapi.client.setApiKey('fId345AM20HXXXXXXXXXXXXXXXXgT3f9kyp2REfkaw2'); //fake api key
gapi.client.load('calendar', 'v3', function() {
var today = new Date(),
request;
request = gapi.client.calendar.calendarList.get({
calendarId: 'pt_br.brazilian#[email protected]',
timeMin: (new Date(today.getFullYear(), today.getMonth(), today.getDay(), 0, 0, 0, 0)).toISOString(),
timeMax: (new Date(today.getFullYear(), today.getMonth(), today.getDay(), 23, 59, 59, 999)).toISOString(),
fields: 'items(creator(displayName,email),end,endTimeUnspecified,start,summary)'
});
request.execute(function(response) {
window.alert('length of items: ' + response.items.length);
});
});
}
Tuttavia, continuo a ricevere la seguente risposta, che è un 401 (non autorizzata) di errore:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "required",
"message": "Login Required",
"locationType": "header",
"location": "Authorization"
}
],
"code": 401,
"message": "Login Required"
}
}
Qualcuno può chiarire se ciò che sto cercando di fare è realizzabile o no?
E infine se è possibile - cosa devo cambiare riferendosi al mio codice attuale?
con il vostro esempio mostrato in precedenza, sarebbe vi capita di avere un riferimento su come ordinare gli elementi in entrata? – blackhawk
@blackhawk Puoi console.log la risposta e vedere cosa c'è dentro. – Gulpener
@ sola-oderinde Puoi fornire come hai trovato l'id del tuo calendario? * modifica Ho trovato questo nelle impostazioni del calendario di Google. Inoltre, il tuo calendario apparirà 404 a meno che non sia condiviso con il pubblico. – IamFace