Ajax-Jquery e PHP postato il 26/11/2015 09:29:17 nel forum programmazione, gdrcd e open source
Salve, più per passione che per necessità, sto programmando da zero un gdr.
Sono ad un buon punto, buttato giù l'intera base in php e poco html.
Ho l'idea di "rifare" tutto curando ora l'interfaccia per l'utente, la mia domanda o problema è il seguente: quanto è sicuro utilizzare molto ajax all'interno dei nostri siti/gdr?
Sinceramente lo trovo molto comodo per poter fare le richieste lato server, senza dover mischiare troppo php e html/js/jquery. Però, valutando un po' e facendo alcune prove, trovo che si perde un po' di sicurezza.
Forse sono io che sbaglio questo pensiero, difatti volevo chiedere a voi un po' come strutturate le vostre pagine, se utilizzate o meno tali approcci.
Pagine → 1
26/11/2015 11:19:49
26/11/2015 11:24:41
Allora, parto un attimo con il momento superquark, magari chiarisco indirettamente anche i dubbi di altra gente:
Che cos'è ajax?
Ajax è javascript. Semplicemente asincrono.
Differenza tra sincrono e asincrono?
Nel primo caso ogni volta che il sito deve fare una chiamata a qualcosa (una pagina, una risorsa, un servizio..) lui seguirà questo ordine:
1. Faccio la chiamata -> 2. Aspetto la risposta -> 3. Riprendo ad eseguire le altre operazioni da fare dopo la chiamata. Durante il punto 2 la pagina è temporaneamente bloccata, si ferma completamente per attendere la risposta.
Se invece parliamo di chiamate asincrone, lo scenario è più simile a questo
1. Faccio la chiamata -> 2. Continuo ad eseguire le altre operazioni come nulla fosse -> 3. Quando arriva la risposta della chiamata agisco di conseguenza.
Però consiglio la lettura di qualcuna di queste risposte, che saprà spiegare le cose meglio di come non l'ho fatto io: http://stackoverflow.com/questions/748175/asynchronous-vs-synchronous-execution-what-does-it-really-mean
Quindi adesso possiamo avvicinarci all'argomento vero e proprio della discussione: è sicuro usare tutto questo javascript? (ajax alla fine è javascript. Così come lo è (in forma diversa) jquery.).
Purtroppo questa nuova domanda solleva una discussione non da poco, ovvero identificare gli ambiti di competenza del PHP e quelli del js.
Sintetizzando in maniera moooooolto estrema:
PHP -> Linguaggio lato SERVER -> Il codice scritto viene salvato, letto ed eseguito SUL SERVER. L'utente può interagire solamente con gli output di quel codice, non con il codice stesso. Se non hai modo di accedere al server, non hai modo di sapere cosa sta facendo il codice PHP di quella pagina.
JAVASCRIPT -> Linguaggio lato CLIENT -> Il codice viene scaricato, letto ed interpretato dal CLIENT. (=Google Chrome/Firefox/Safari/Edge...)
Questo si traduce nel fatto che se premi F12 durante la navigazione (o fai ispeziona elemento con click dx) tu puoi leggere e (in certa parte, in modi più o meno rapidi) manomettere quel codice. Ovviamente è una fotocopia dell'originale, quindi anche lo modifichi radicalmente... sul sito resta sempre uguale. È solo sul tuo pc che sta cambiando comportamento. Viceversa, se manometti il codice PHP, stai cambiando il comportamento della pagina per TUTTI gli utenti del tuo sito.
Allora se è una cosa che vedo solo io e non posso manometterla andrà bene usare tanto javascript!
Sni. Immagina di avere una chiamata javascript (asincrona o meno), oppure anche solo una semplicissima GET in HTML costruita in questo modo:
26/11/2015 11:52:08
Quello che intendevo dire io quando ho chiesto dove lo trova meno sicuro, è che comunque il problema della manipolazione dei dati lo puoi avere anche su un passaggio dati tradizionale attraverso un form o un link se non viene fatta una validazione dei dati ove necessario
27/11/2015 08:56:14
ne approfitto qui per domandare di una cosa che mi è capitata di recente(penso che la domanda sia più indirizzata a sandor, visto che sono sicuro lui usi il mio stesso framework).
Su ci avevo settato globalmente in token csfr(quello nativo di ci, non ddi google), ma mi ha bloccato tutte le chiamate ajax. c'è un modo per ovviare a cciò senza rinunciare alla protezione?
Discussione seguita da
Pagine → 1
Rispondi alla Discussione Aggiungi ai Preferiti Inoltra Discussione Forum Programmazione, GDRCD e Open Source Elenco Forum
Spade Celesti: La fine del torneo di Shacheng