-
Notifications
You must be signed in to change notification settings - Fork 0
Twitter web client made with jQuery and Bootstrap
License
vcuculo/cows
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
COWS twitter client Copyright (C) 2013 Vittorio Cuculo <me@vcuculo.com> ===================================================== ** PROBLEMA ** Per la realizzazione del progetto è stato necessario trovare una soluzione a due problemi fondamentali: * le API di Twitter non supportano chiamate di tipo CORS (https://en.wikipedia.org/wiki/Cross-origin_resource_sharing) * realizzando una applicazione interamente client side si rendono visibili, nel codice JavaScript, il 'consumer_key' e il 'consumer_secret' necessarie per l'interazione tra l'applicazione e le API di Twitter I due problemi sono, in realtà, correlati tra di loro. Gli sviluppatori di Twitter, infatti, scoraggiano la realizzazione di applicazioni interamente client side per evitare disclosure delle 'consumer_key' e 'consumer_secret' che potrebbero essere utilizzate da terze parti. Dunque, per questo motivo non realizzano il supporto a CORS. ** SOLUZIONE ** La soluzione che ho trovato è quella di utilizzare una pagina PHP che faccia da proxy tra il client Javascript e le API di Twitter. All'interno del proxy, inoltre, sono memorizzati la 'consumer_key' e il 'consumer_secret', che permettono di mantenere nascoste queste informazioni all'utente. ** CONFIGURAZIONE ** Affinchè il proxy, realizzato dal file "twitter-proxy.php", funzioni correttamente, è necessario copiare l'intera directory "COWS" nella root directory di un webserver locale, in maniera tale da rendere l'applicazione raggiungibile all'indirizzo "http://127.0.0.1/COWS". Se si vuole cambiare la posizione del proxy, rimanendo comunque sullo stesso webserver, è necessario configure la prima riga del file "js/utility.js" const PROXY = "twitter-proxy.php?url="; La 'consumer_key' e la 'consumer_secret' incluse nel file "twitter-proxy.php" sono legate alla callback URL "http://127.0.0.1/COWS/". Se si vogliono utilizzare questi dati, dunque, è necessario hostare la directory COWS su un server web locale che permetta di raggiungere l'applicazione all'url indicato sopra. ** UTILIZZO ** Le timeline che si inseriscono nell'applicazione sono contenute nell'array "twArray". Ogni timeline include l'array "tweets" che raccoglie i tweet della relativa timeline. Ogni tweet è rappresentato da un oggetto definito secondo le specifiche delle API di Twitter https://dev.twitter.com/docs/platform-objects/tweets
About
Twitter web client made with jQuery and Bootstrap
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published