527 messaggi dal 18 dicembre 2012
Ciao a tutti
utilizzo delle classi per caricare dei video da un sito su youtube.
Fino a qualche mese fa funzionava tutto bene, ora invece mi da 'Invalid credentials'. Se entro nel mio profilo google mi segnala che è stato impedito l'accesso ad un'applicazione sconosciuta.
Penso che sia cambia la politica di sicurezza di google, ma non capisco come e dove devo andare per aggiungere il sito all'elenco delle applicazioni che posso accedere al profilo google e caricare i video.
Grazie mille
11.886 messaggi dal 09 febbraio 2002
Contributi
Ciao,
probabilmente devi registrare l'applicazione nella Google Developer Console. Qui trovi delle istruzioni:
https://developers.google.com/youtube/registering_an_application

ciao,
Moreno

Enjoy learning and just keep making
527 messaggi dal 18 dicembre 2012
Il problema è che usavo la versione 2 delle api. Ora sto provando ad utilizzare la versione 3, ma quando provo ad eseguire il login mi si apre la finestra di google, ma io non voglio questo.

Ci sono esempi, che non siano quelli di google, per eseguire con le api:
- autenticazione
- upload
- lettura
- cancellazione
di video

Grazie
11.886 messaggi dal 09 febbraio 2002
Contributi
Ciao,

Svipla ha scritto:

ma quando provo ad eseguire il login mi si apre la finestra di google

Quello è probabilmente il meccanismo di autenticazione basato su OAuth 2.0 che utilizzeresti se volessi lavorare con il canale YouTube personale dell'utente.
Tu invece - da quanto ho capito - hai la necessità di lavorare sempre con lo stesso canale e quindi credo che la modalità di autenticazione più appropriata nel tuo caso sia con Server Key, che userai in tutte le tue chiamate alla API (dal tuo server).

Leggi il paragrafo "Creating API Keys" nella documentazione:
https://developers.google.com/youtube/registering_an_application#Create_API_Keys
Praticamente, devi recarti nella Google Developers Console, creare un progetto (se non esiste già), cliccare APIs & Auth > APIs dal menu a sinistra e andare ad abilitare la API dei dati di YouTube, cliccare APIs & Auth > Credentials e cliccare il bottone Add credentials e selezionare API Key e poi Server Key.

Nella documentazione, c'è una pagina chiamata "Sample requests" che ti mostra come usarla.
https://developers.google.com/youtube/v3/sample_requests
Si legge:

When you submit an unauthenticated request, you need to include the key argument that specifies the unique API key for the application making the request. For example, this request retrieves the playlists associated with the GoogleDevelopers channel.

GET {base_URL}/playlists?part=snippet
&channelId=UC_x5XG1OV2P6uZZ5FSM9Ttw
&key={YOUR_API_KEY}

Questo servirà ad autenticare la tua richiesta.
La sicurezza di questo meccanismo di autenticazione è fondato sul fatto che tu abbia tenuto segreta la chiave nel tuo server.

Nella documentazione trovi anche altri esempi, però non ho capito se vuoi interagire con la API componendo tu stesso le richieste HTTP oppure se vuoi utilizzare la client library per .NET.

Spiega se hai fatto progressi a che punto sei arrivato.

ciao,
Moreno

Enjoy learning and just keep making
527 messaggi dal 18 dicembre 2012
Grazie Moreno
Sto utilizzando c# per le mie richieste.
Ho provato con l'Api key, ma mi da errore:
Response status code does not indicate success: 401 (Unauthorized).

var service = new YouTubeService(new BaseClientService.Initializer
{
ApplicationName = "XXX",
ApiKey = "XXX",
});

Non mi è chiaro cosa dovrei passare ad ApplicationName.

Ho installato il pacchetto delle Api di google da nuget, ma durante l'esecuzione del progetto che le utilizza, mi richiedere dei file .cs che fanno parte del pacchetto che ho installato. Sono stato costretto a cercarle con google e quando esegue il debug richiama. Ora non so perchè accade questo e se avrò problemi durante la pubblicazione
Modificato da Svipla il 06 ottobre 2015 10.57 -
11.886 messaggi dal 09 febbraio 2002
Contributi
Ciao,
ho scaricato anch'io il pacchetto da NuGet e, anche se non ho riscontrato problemi in fase di compilazione, non sono riuscito a farlo funzionare nel modo in cui pensavo.


Response status code does not indicate success: 401 (Unauthorized).

Sì, hai ragione, perché la server key viene usata casomai per limitare il numero di richieste che il client è abilitato a fare.
Puoi usarla per fare ricerche sui dati pubblici, ma non per modificare i dati dei video o caricarne di nuovi.

Per quello c'è bisogno di autenticazione. Dimenticavo che per le applicazioni lato server bisogna procurarsi un Service Account che ti permette di accedere ai dati senza dover inserire username e password dell'account Google.

Tuttavia, per qualche strano motivo Google non ha consentito l'accesso alle API di YouTube mediante Service Account. Da qui si legge:

Service accounts do not work for YouTube Data API calls because service accounts require an associated YouTube channel, and you cannot associate new or existing channels with service accounts

Ne ho trovato conferma in questa issue in cui altri sviluppatori si lamentano di questa cosa ma è stata chiusa come "won't fix"
https://code.google.com/p/gdata-issues/issues/detail?id=5370


quando provo ad eseguire il login mi si apre la finestra di google

Mi sa che non puoi evitarlo. Non vorrei sbagliarmi ma a questo punto penso che sia l'unico modo per ottenere il token di autenticazione.

ciao,
Moreno
Modificato da BrightSoul il 06 ottobre 2015 23.25 -

Enjoy learning and just keep making
527 messaggi dal 18 dicembre 2012
Grazie mille Moreno
come sempre preciso e chiaro.
Il problema è che i video sono caricati da i nostri clienti che non conoscono i dati di accesso al nostro al nostro canale youtube.
Questo è un bel problema perchè prima riuscivo a fare tutto.
Inoltre, ricevo sempre questo errore dopo il login:

400. That’s an error.

Error: redirect_uri_mismatch

Application: XXX

You can email the developer of this application at: info@xxx.com

The redirect URI in the request: http://localhost:50587/authorize/ did not match a registered redirect URI.


Ho inserito l'url in google, ma nulla.

Non veramente come risolvere questo problema

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.