Tidak.
Jenis konten harus berupa apa pun yang diketahui, jika Anda mengetahuinya. application/octet-stream
didefinisikan sebagai "data biner sewenang-wenang" dalam RFC 2046, dan ada tumpang tindih yang pasti di sini yang sesuai untuk entitas yang tujuan utamanya adalah untuk disimpan ke disk, dan sejak saat itu berada di luar dari apa pun "webby". Atau melihatnya dari arah lain; satu-satunya hal yang dapat dilakukan dengan aman dengan aplikasi / octet-stream adalah menyimpannya ke file dan berharap orang lain tahu untuk apa itu.
Anda dapat menggabungkan penggunaan Content-Disposition
dengan tipe konten lain, seperti image/png
atau bahkan text/html
untuk menunjukkan bahwa Anda ingin menyimpan daripada menampilkan. Dulu ada kasus bahwa beberapa browser akan mengabaikannya dalam kasus text/html
tapi saya pikir ini sudah lama pada saat ini (dan saya akan segera tidur jadi saya tidak akan mulai menguji sejumlah besar browser sekarang; mungkin nanti).
RFC 2616 juga menyebutkan kemungkinan token ekstensi, dan hari-hari ini sebagian besar browser mengenali inline
bahwa Anda ingin entitas ditampilkan jika memungkinkan (yaitu, jika itu adalah tipe yang diketahui browser untuk ditampilkan, jika tidak maka tidak ada pilihan dalam hal ini) . Ini tentu saja merupakan perilaku default, tetapi itu berarti bahwa Anda dapat memasukkan filename
bagian dari header, yang akan digunakan browser (mungkin dengan beberapa penyesuaian sehingga ekstensi file cocok dengan norma sistem lokal untuk jenis konten yang dipertanyakan, mungkin tidak) sebagai saran jika pengguna mencoba menyimpan.
Karenanya:
Content-Type: application/octet-stream
Content-Disposition: attachment; filename="picture.png"
Berarti "Saya tidak tahu apa ini. Harap simpan sebagai file, sebaiknya bernama picture.png".
Content-Type: image/png
Content-Disposition: attachment; filename="picture.png"
Berarti "Ini adalah gambar PNG. Silakan simpan sebagai file, sebaiknya bernama picture.png".
Content-Type: image/png
Content-Disposition: inline; filename="picture.png"
Berarti "Ini adalah gambar PNG. Harap tampilkan kecuali Anda tidak tahu cara menampilkan gambar PNG. Jika tidak, atau jika pengguna memilih untuk menyimpannya, kami sarankan nama picture.png untuk file yang Anda simpan sebagai".
Dari inline
beberapa browser yang mengenali beberapa akan selalu menggunakannya, sementara yang lain akan menggunakannya jika pengguna telah memilih "save link as" tetapi tidak jika mereka memilih "save" saat melihat (atau setidaknya IE dulu seperti itu, itu mungkin telah berubah beberapa tahun yang lalu).
attachment
bisa jadi dianggap "terbaik untuk tidak menampilkan ini sendiri" sementarainline
sebagai "terbaik untuk menampilkan ini sendiri jika Anda bisa". Bagaimanapun, sebagian besar browser akan menggunakan nilai nama file sebagai nama file yang disarankan, tetapi pengguna selalu dapat menimpanya.