2008-10-09 13 views
16

Son kullanıcının makinesinde kaydetme yanıtına bir dosya kaydetmem gerekiyor. Dosya düz metin, dolayısıyla tarayıcıda görüntülenmekte olan metni önlemek için hangi içerik türünü kullanabilirim?Metin yanıtının indirilmesini zorlamak için hangi içerik türü?

+0

İlgili: uygulama/sekizli-akışı dosya indirmek için: [I Content-Type ihtiyacınız var mı? ] (http://stackoverflow.com/q/20508788/95735) –

cevap

21

güvenli tarafta olmak ve tüm tarayıcılarda tutarlı davranışı sağlamak için, hem kullanmak daha genelde var:

Content-Type: application/octet-stream 
Content-Disposition: attachment;filename=\"My Text File.txt\" 
+4

Sadece içerik düzenine ihtiyacınız var, bu şekilde metin/düz gibi herhangi bir içerik türüne sahip olursunuz. –

+1

@MattConnolly İçerik Türü'nün üstbilgisini kullanmayacaksanız, * ilgili bir içerik türünü * bulundurmayı nasıl öneriyorsunuz? –

+1

Yanlış cevap - bkz. Http://stackoverflow.com/q/20508788/95735 –

6

Bu şekilde çalıştığını sanmıyorum.

Content-Disposition: attachment başlığını kullanın, ancak doğru İçerik Türüne sahip olun.

+0

Kullanıcı Aracısı Internet Explorer 6 ... –

23

Çoğu durumda, aşağıdaki çalışması gerekir:

Content-type: application/octet-stream 
Content-Disposition: attachment; filename="myfile.txt" 

Orada hala bir metin dosyası olarak gösterecektir tarayıcıların bazı marjinal vakalar vardır, ama ana akım tarayıcılar hiçbiri (bahsediyorum olacak bazı MID'lerde gömülü tarayıcılar.


DÜZENLEME: Bu yanıt başlangıçta yayınlandığında, Mime Type application/octet-stream gönderme bazı tarayıcılarda bir indirme tetiklemek için tek güvenilir yolu idi. Şimdi, 2016'da eski bir tarayıcıyı desteklemeniz gerekmiyorsa, doğru mime tipini güvenli bir şekilde belirtebilirsiniz.

+0

Sadece İçerik-Tür: application/octet-stream 'gönder… İçerik hakkında yalan söylemeniz gerekiyor mu? -tipi? Eğer Content-Disposition'ı kullanabilseydiniz, hangi/yapmalı/çalışmalıysan daha iyi olurdu. –

+0

Deneyimlerime göre, uygulama/octet akışı, tüm tarayıcılarda daha güvenilir çalışmasını sağlar. – ceejayoz

+0

^O ne dedi. Metin/düz kullanılıyorsa, Internet Explorer 6 yine de metin olarak görüntüleyebilir. –

İlgili konular