, - karakteri '\' kaçabilir quites arasındaki dize başka bir ascii karakteri.Ayrıştırma içerik eğilim başlığının dosya parçalı/dan-data dosya alan parametre HTTP alıntı dize olarak aldığı çok parçalı/form-data içerik eğilim başlığındaki RFC göre
Sorun şu ki, web tarayıcıları bunu yapmıyor.
IE6 gönderir:
Content-Disposition: form-data; name="file"; filename="z:\tmp\test.txt"
yerine kurallarına yerine z:\tmp\test.txt
göre z:tmptest.txt
olarak çözümlenen gerektiğini
Content-Disposition: form-data; name="file"; filename="z:\\tmp\\test.txt"
bekliyordu. Bu konuyla ilgilenmesi için öneririm nasıl ...
Content-Disposition: form-data; name="file"; filename="\"test\".txt"
beklenen Yani bir yerine
Content-Disposition: form-data; name="file"; filename=""test".txt"
:
Firefox Konqueror ve Chrome "örneğin karakterlerden kurtulmak değil mi?
Herkes bir fikir var mı?
"Bu dosya adını ayrıştırmanızın bir nedeni var mı?" - evet dosya adını bilmek istiyorum;). "En azından tutarlı olan tek şey, başlığın dosya adı kısmının çift tırnak işareti ile bitmesidir." Dosya adı ve ad alanları bu sırayla gelmemelidir, bu nedenle dosya adının son ile bittiğini düşünmek kötü bir fikirdir. tırnak işareti. – Artyom
Want! = Ihtiyaç. ;) Tamam, en azından '' 'veya' 'ile biteceğini garanti edersiniz; - Bu tutarlılık eksikliği ile, kullanıcıların ismini vermeyeceği gerçeğine güvenmek gibi bazı tavizler vermek zorundasınız: '' dosya adlarının ortasında :) Alternatif olarak, destekleyen bir web çerçevesi kullanıyor musunuz? Bu öznitelik sizin için en iyi ayrıştırma sizin için? –