- 231
- 8
- CPU
- i5-6500
- Scheda Madre
- ASRock H170 Pro4S
- HDD
- Samsung 870QVO 1TB, Samsung 850EVO 250GB, HD Toshiba 2TB
- RAM
- Corsair DD4 2133 C13 2x4GB
- GPU
- Sapphire R9 380 4GB NITRO
- Audio
- Integrata + DAC Audioengine D1
- Monitor
- LG 24MB56HQ-B IPS
- PSU
- XFX 550 Black
- Case
- Corsair Spec-03
- Periferiche
- Casse Edifier R1800TIII
- OS
- Windows 10
Sto usando una model form di django.
Da ciò che ho capito django riesce a validare una form in modo piuttosto sicuro, ovvero controlla i dati immessi impedendo agli hacker di mandare i loro codici malevoli.
In genere quindi per fare ciò nel template html uso:
e poi nella view uso:
is_valid() è il comando che provvede a validare la form. Chiedo conferma che dia una certa sicurezza.
Questa volta però la mia form non ha una action e il bottone submit farebbe partire direttamente una funzione javascript, la quale poi chiamerebbe una django view tramite ajax.
Spero sia chiaro, non è nulla di strano.
Il problema è che tramite javascript non so come fare a validare la mia form. Non conosco un comando apposito e scrivere una funzione che lo faccia non saprei da che parte farmi. Il problema non è controllare cose banali come valori massimi o minimi, campi richiesti e simili ma proteggermi dagli hacker quindi serve qualcosa di serio.
Immagino ci sia qualche soluzione standard, possibile che non ci abbiano pensato?
Pensavo a questa soluzione ma non so neanche se abbia senso:
quando chiamo la view tramite Ajax potrei inviare i dati della form e fare una cosa del genere:
Può funzionare?
In genere i dati (myvalue1, myvalue2, etc) si trovano nella request.POST che è una specie di dizionario. In questo caso invece li dovrei dare io uno ad uno (tipo nel codice sopra), giusto?
Spero sia tutto chiaro, grazie per le risposte
Da ciò che ho capito django riesce a validare una form in modo piuttosto sicuro, ovvero controlla i dati immessi impedendo agli hacker di mandare i loro codici malevoli.
In genere quindi per fare ciò nel template html uso:
Codice:
<form action="/url/to/my/view">...</form>
e poi nella view uso:
Codice:
if myform.is_valid():
is_valid() è il comando che provvede a validare la form. Chiedo conferma che dia una certa sicurezza.
Questa volta però la mia form non ha una action e il bottone submit farebbe partire direttamente una funzione javascript, la quale poi chiamerebbe una django view tramite ajax.
Spero sia chiaro, non è nulla di strano.
Il problema è che tramite javascript non so come fare a validare la mia form. Non conosco un comando apposito e scrivere una funzione che lo faccia non saprei da che parte farmi. Il problema non è controllare cose banali come valori massimi o minimi, campi richiesti e simili ma proteggermi dagli hacker quindi serve qualcosa di serio.
Immagino ci sia qualche soluzione standard, possibile che non ci abbiano pensato?
Pensavo a questa soluzione ma non so neanche se abbia senso:
quando chiamo la view tramite Ajax potrei inviare i dati della form e fare una cosa del genere:
Codice:
form = MyForm(field1=myvalue1, field2=myvalue2, etc)
if form.is_valid():
...
Può funzionare?
In genere i dati (myvalue1, myvalue2, etc) si trovano nella request.POST che è una specie di dizionario. In questo caso invece li dovrei dare io uno ad uno (tipo nel codice sopra), giusto?
Spero sia tutto chiaro, grazie per le risposte