Sto cercando di eseguire un 'POST' http con multipart/form-data su un backend GAE python. Il mio metodo sul lato server sta ricevendo il corpo completo ma non ho assolutamente idea di come analizzare il contenuto del corpo senza doverlo passare manualmente e dividere il testo per i valori.Python - Parsing richiesta multipart/form-data sul lato server
La mia richiesta è simile al seguente:
POST /android/v4/MyPostMethod HTTP/1.1
Accept: */*
Accept-Charset: *
Content-Length: 186808
Content-Type: multipart/form-data; boundary=*****; charset="utf-8"
Content_Length: 186808
Content_Type: multipart/form-data; boundary=*****
Host: myhost.appspot.com
User-Agent: Dalvik/1.6.0 (Linux; U; Android 4.1.2; GT-I9300 Build/XXXXX)
Via: HTTP/1.1 MSP-YV
--*****
Content-Disposition: form-data; name="value1"
Content-Type: text/plain; charset=UTF-8
f0ef73c5-54dd-40cf-9ee7-5c4cb764eb28
--*****
Content-Disposition: form-data; name="value2"
Content-Type: text/plain; charset=UTF-8
10d71e73-4d4d-4607-b271-f7efcfd0c59d
--*****
Content-Disposition: form-data; name="value3"
Content-Type: text/plain; charset=UTF-8
10d71e73-4d4d-4607-b271-f7efdfdfdfdf
--*****
Content-Disposition: form-data; name="logText"; filename="log.txt"
Content-Type: text/plain
Content-Transfer-Encoding: binary
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
...
--*****--
Ho cercato in giro e non sono riuscito a trovare una buona spiegazione di come fare questa cosa banale. Apprezzo se qualcuno potrebbe aiutarmi qui. Grazie.
Questo non è l'ideale per file di grandi dimensioni. Dalla documentazione "Questo è facile da usare ma non molto utile se si prevede di caricare megabyte - in questo caso, utilizzare invece la classe FieldStorage che è molto più flessibile." – mbarkhau