28 Aralık 2011, ÇARŞAMBA
Nasıl HTTP upload çalışma dosyası?
Bağlı olan bir dosya bu gibi basit bir form sunduğumda:
<form enctype="multipart/form-data" action="http://localhost:3000/upload?upload_progress_id=12344" method="POST">
<input type="hidden" name="MAX_FILE_SIZE" value="100000" />
Choose a file to upload: <input name="uploadedfile" type="file" /><br />
<input type="submit" value="Upload File" />
</form>
Dosyayı nasıl içten göndermek mi? Dosya veri olarak HTTP vücudun bir parçası olarak gönderilir? Bu istek başlıklarını, bir şey dosya adı ile ilgili görmüyorum.
Ben sadece bir dosya gönderirken HTTP iç işleyişini bilmek ister.
CEVAP
28 Aralık 2011, ÇARŞAMBA
Hadi bir dosya seçin ve form (kısaltma için başlıkları kesildi ettim) gönder ne olur: bak
POST /upload?upload_progress_id=12344 HTTP/1.1
Host: localhost:3000
Content-Length: 1325
Origin: http://localhost:3000
... other headers ...
Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryePkpFF7tjBAqx29L
------WebKitFormBoundaryePkpFF7tjBAqx29L
Content-Disposition: form-data; name="MAX_FILE_SIZE"
100000
------WebKitFormBoundaryePkpFF7tjBAqx29L
Content-Disposition: form-data; name="uploadedfile"; filename="hello.o"
Content-Type: application/x-object
... contents of file goes here ...
------WebKitFormBoundaryePkpFF7tjBAqx29L--
URL form parametreleri kodlama yerine, form parametreleri (dosya veri dahil olmak üzere) istek gövdesinde çok parçalı bir belgede bölümler olarak gönderilir.
Yukarıdaki örnekte, değeri şeklinde ayarlanmış giriş MAX_FILE_SIZE
gibi bir bölüm dosya verileri içeren görebilirsiniz. Dosya adı Content-Disposition
Başlığı parçasıdır.
Tüm detayları here.
Bunu Paylaş:
Nasıl SQLite veritabanı dosyası tablol...
Nasıl vim "sudo" hile çalışm...
Nasıl Python dosyası eklemek musunuz?...
Nasıl bir toplu iş dosyası komut satır...
Nasıl bir başlık curl çağrısı ile bir ...