Saat melihat gambar di gambar google, orang mungkin tidak sengaja mengklik "simpan gambar sebagai", atau "lihat gambar" (yang entah bagaimana kadang-kadang meminta unduhan juga). Ini kemudian membuka jendela yang menanyakan apakah Anda ingin mengunduh file tersebut. Namun, jika Anda membatalkan sebelum sesuatu disimpan, apakah ini masih dilihat sebagai unduhan dari sisi "server"? Karena saya tidak begitu berpengalaman dalam topik ini, saya menggunakan "server" hanya mencakup entitas apa pun yang dapat merekam / menyimpan aktivitas tersebut.
21
Jawaban:
Dilihat dari sisi server, sama sekali tidak ada perbedaan teknis antara "mentransfer untuk dilihat di jendela browser" dan "mengunduh untuk penyimpanan".
Mungkin server akan memberikan pratinjau (lebih kecil) dan gambar nyata (lebih besar) untuk diunduh, dan dapat membedakan mana yang telah diakses. Tetapi ia dapat mendaftarkan (dan mencatat) hanya akses ke file-file ini, alamat IP yang berasal dari permintaan, "string id" generik dari perangkat lunak browser - bukan maksud klien.
Tetapi akses file tidak selalu merupakan hasil dari interaksi manusia dengan komputer klien. Di satu sisi, browser menyimpan gambar dan data situs web lain di sistem Anda, bahkan jika Anda bahkan tidak menggunakan "save image as ...". Di sisi lain, banyak browser bahkan "mengikuti tautan" (yaitu: unduh hal-hal!) Di muka , untuk mempercepat navigasi. Tembolok peramban bahkan mungkin masuk ke cadangan lokal Anda dengan cara itu, bahkan jika Anda tidak pernah dengan sengaja mengakses file-file ini!
Akhirnya, menggunakan "simpan sebagai" dan membatalkan (tidak memilih nama file tujuan) dapat atau tidak dapat memulai unduhan, tergantung pada implementasi browser yang Anda gunakan.
sumber
Content-Disposition
tajuk HTTP :inline
menunjukkan tampilan di browser,attachment
unduhan.curl https://www.google.com/ -H 'User-Agent: I am really a web browser, trust me' >> /dev/null
;)Meskipun server HTTP tidak melihat unduhan yang dibatalkan, mungkin ada kode Javascript pada halaman yang memantau acara tersebut.
Javascript memiliki pengendali acara yang dapat digunakan untuk mendeteksi klik kanan pada gambar, dan sangat mungkin seseorang dapat memonitor pergerakan mouse lainnya untuk menebak pilihan apa yang Anda buat dari menu popup. Setelah itu, skrip dapat dengan mudah mengirim informasi ke server segera, atau menyimpannya di penyimpanan browser lokal dan mengirimkannya nanti.
Dalam kasus spesifik pencarian Gambar Google, Javascript pada halaman itu memang memiliki banyak penangan yang mendengarkan acara mouse. Namun kode ini dikaburkan sehingga tidak mudah untuk mengetahui jenis pemantauannya.
sumber
HEAD
permintaan HTTP daripada aGET
.Ini tergantung server.
Server akan dapat mendaftar ketika unduhan dimulai (pikirkanlah, ia harus tahu karena ini menunjukkan nama).
Server juga dapat melacak berapa byte yang ditransfer dan jika / ketika koneksi ditutup, yang dapat menunjukkan apakah diwnload selesai.
Ada juga kemungkinan lain seperti resume dowload dan unduhan multithreaded - tetapi sekali lagi, server bisa mengetahui dan merekam semua ini.
Perhatikan bahwa dalam kasus tertentu mengklik kanan dan mengunduh gambar, mungkin saja unduhan itu tidak akan didaftarkan sebagai unduhan sama sekali karena caching sisi klien.
sumber
Content-Disposition: attachment; filename="…"
sehingga browser menampilkan permintaan unduhan, maka bahkan ketika membatalkan unduhan server akan tahu tentang permintaan - dan mungkin bahkan dapat membedakan bahwa unduhan dibatalkan.Jika ... Anda membatalkan sebelum sesuatu disimpan, apakah "server" memperhatikan / merekam ini sebagai unduhan?
Server jarak jauh seharusnya tidak melihat aktivitas pengunduhan karena tidak ada pengunduhan telah dimulai.
Namun, server jauh tahu bahwa Anda telah mengunduh gambar untuk menampilkannya di peramban Anda ... dan salinannya akan ada di cache peramban ...
"Entitas" yang memonitor mesin lokal Anda secara langsung dapat merekam sesuatu mengenai aktivitas itu.
sumber
Content-Disposition
header akan berisi nama file yang sebenarnya.Content-Disposition
tajuk (sudah disebutkan beberapa kali kepada Anda), artinya permintaan harus dibuat terlebih dahulu. Selain itu, browser dapat dan mulai mengunduh unduhan sebelum Anda memilih direktori tujuan.