Io uso Django e ckeditor per fornire gusto WYSIWYG per TextEdits. Vorrei usare la funzione di caricamento file di CKEditor (nella finestra di dialogo filebrowser/immagine), ma il POST realizzato da CKEditor per caricare l'immagine contiene solo i dati del file.Come aggiungere un campo per POST valori in CKEditor caricare
Questo è un problema per il controllo CSRF. Non sono riuscito a trovare la documentazione di CKEditor e a trovare un posto a modificare i dati POST per il caricamento di file, per aggiungere il csrf_token di django nei dati POST.
Come soluzione temporanea, posso modificare i parametri filebrowserUploadUrl per includere i dati csrf nell'URL di caricamento, utilizzare @csrf_exempt per la vista di caricamento e controllare i parametri request.GET per controllare csrf. Ma questa soluzione è sicura?
In ogni caso, se qualcuno sa come includere CSRF gettone direttamente all'interno CKEditor dati upload di file POST, io sono fortemente interessati ...
Stai utilizzando [django-ckeditor] (http://pypi.python.org/pypi/django-ckeditor) o un altro widget? Se lo stai scrivendo da solo: è corretto, non puoi aggiungere qualcosa al POST perché il corpo pubblicato è il file stesso. Quindi sì, è necessario fornire un token nei parametri dell'URL. – ilvar
anche django-ckeditor non usa protezione CSRF per il caricamento di file (e questo è male IMHO): @csrf_exempt def caricare (richiesta): """ carica un file e inviarlo di nuovo l'URL di CKEditor TODO:. Convalida i caricamenti "" " – jmbarbier