Hayır.
İçerik türü, biliniyorsa, ne olursa olsun bilinmelidir. application/octet-stream
RFC 2046'da "keyfi ikili veriler" olarak tanımlanır ve burada tek amacı amacı diske kaydedilmek ve bu noktadan itibaren "webby" dışında kalan varlıklar için uygun olması konusunda kesin bir çakışma vardır. Veya başka bir yönden bakmak için; Birinin application / octet-stream ile güvenli bir şekilde yapabileceği tek şey, dosyayı dosyaya kaydetmek ve başka birinin bunun ne için olduğunu bildiğini ummaktır.
Kullanımını, görüntülemek yerine kaydetmek istediğinizi belirtmek için veya hatta Content-Disposition
diğer içerik türleriyle birleştirebilirsiniz . Eskiden bazı tarayıcıların bunu görmezden geleceği durumdaydı , ancak bu uzun zaman önce bu noktada olduğunu düşünüyorum (ve yakında yatacağım, bu yüzden bir sürü test yapmaya başlamayacağım. tarayıcılar şu anda; belki daha sonra).image/png
text/html
text/html
RFC 2616 ayrıca uzatma belirteçleri olasılığından da bahsetmektedir ve bu günlerde çoğu tarayıcı inline
, varlığın mümkünse görüntülenmesini istediğinizi belirtmektedir (yani, tarayıcının nasıl görüntüleneceğini bildiği bir türse, başka türlü bir seçeneğe sahip değildir) . Bu elbette varsayılan davranıştır, ancak filename
üstbilginin tarayıcıların kullanacağı kısmını ekleyebileceğiniz anlamına gelir (belki de bazı ayarlarla, dosya uzantılarının söz konusu içerik türü için yerel sistem normlarıyla eşleşmesi, belki değil) kullanıcı kaydetmeye çalışırsa öneri olarak.
Dolayısıyla:
Content-Type: application/octet-stream
Content-Disposition: attachment; filename="picture.png"
"Bunun ne olduğunu bilmiyorum. Lütfen bunu bir dosya olarak kaydedin, tercihen picture.png olarak adlandırın".
Content-Type: image/png
Content-Disposition: attachment; filename="picture.png"
"Bu bir PNG görüntüsüdür. Lütfen tercihen resim.png adlı bir dosya olarak kaydedin" anlamına gelir.
Content-Type: image/png
Content-Disposition: inline; filename="picture.png"
"Bu bir PNG görüntüsüdür. PNG görüntülerinin nasıl görüntüleneceğini bilmiyorsanız lütfen görüntüleyin. Aksi takdirde veya kullanıcı kaydetmeyi seçerse, kaydettiğiniz dosya için picture.png adını öneriyoruz".
inline
Bazılarını tanıyan tarayıcılardan her zaman kullanır, diğerleri ise kullanıcı "bağlantıyı farklı kaydet" i seçtiyse, ancak görüntüleme sırasında "kaydet" i seçtiyse (veya en azından IE eskiden böyle olurdu) kullanmaz. birkaç yıl önce değişmiş olabilir).