2013-11-04 9 views
5

voglio usare il metodo API di Flickr flickr.photos.search in JavaScript, per cercare tutte le mie foto con un tag specifico:È sicuro usare la mia chiave API Flickr nel codice JavaScript del lato client?

http://api.flickr.com/services/rest/?method=flickr.photos.search&api_key={API_KEY}&user_id=50001188%40N00&tags=fazynet&format=rest 

(Per farlo funzionare, cambiare {API_KEY} ad una valida Flickr Chiave API.)

La mia domanda è: È sicuro includere quella chiave nel codice JavaScript del client?

Ho visto alcuni siti tutorial farlo, ma cosa deve impedire a qualcuno di copiare la propria chiave API (o mia) e superare i limiti di velocità?

Ovviamente, potrei impostare un proxy molto semplice eseguito in Node.js che inserisca la chiave (probabilmente anche Apache o Nginx potrebbero farlo), ma è ancora una cosa da configurare e monitorare.

Se c'è una soluzione JavaScript sicura e pura, la prenderò per favore. :)

nota, Attualmente sto usando questa query che richiede alcuna autenticazione:

http://api.flickr.com/services/feeds/[email protected]&tags=fazynet&format=json 

Tuttavia, i risultati sembrano non essere più che riflette i cambiamenti (dopo almeno 24 ore di attesa).

+1

Non c'è modo di aggirarlo. Se lo si utilizza nel codice lato client, diventa visibile agli utenti finali e possono copiarlo nei propri script. Il meglio che puoi fare è offuscare il tuo Javascript per renderlo più difficile da ottenere. – Barmar

+2

possibile duplicato di [Come proteggere una chiave API quando si utilizza JavaScript?] (Http://stackoverflow.com/q/11470389/710446) – apsillers

risposta

1

Non c'è un puro metodo JavaScript per ottenere questo ho paura, dovrai creare uno script sul lato server per eseguire la chiamata API e chiamare invece quello script.

+0

Certo, non sono riuscito a pensare a nessun modo in cui potrebbe essere fatto con il le attuali API di Flickr (forse potrebbero cambiarlo per consentire solo le richieste da determinati domini, ma nemmeno sicuro che sia possibile). – fazy

+0

Purtroppo no, poiché la richiesta verrebbe dal browser degli utenti, quindi non saprebbero (o confermeranno) da quale dominio proveniva. Inoltre, non c'è davvero bisogno di questo. Ma bella domanda. – George

Problemi correlati