Ao visualizar imagens no google images, pode-se clicar acidentalmente em "salvar imagem como" ou "visualizar imagem" (que de alguma forma também solicita um download). Isso abre uma janela perguntando se você deseja baixar o arquivo. No entanto, se você cancelar antes que algo seja salvo, isso ainda será visto como um download do lado "servidor"? Como não sou muito versado neste tópico, meu uso de "servidor" cobre apenas qualquer entidade que possa registrar / salvar a referida atividade.
21
Respostas:
Visto do lado do servidor, não há absolutamente nenhuma diferença técnica entre "transferir para visualização em uma janela do navegador" e "baixar para armazenamento".
Talvez um servidor forneça uma visualização (menor) e a imagem real (maior) para download e possa distinguir qual foi acessado. Mas ele pode registrar (e registrar) apenas o acesso a esses arquivos, o endereço IP do qual a solicitação veio, uma "id string" genérica do software do navegador - não a intenção de um cliente.
Mas o acesso a arquivos nem sempre resulta da interação humana com um computador cliente. Por um lado, os navegadores armazenam imagens e outros dados do site em seu sistema, mesmo que você nem use "salvar imagem como ...". Por outro lado, muitos navegadores até "seguem links" (ou seja, baixam coisas!) Antecipadamente , para acelerar a navegação. O cache do navegador pode entrar no backup local dessa maneira, mesmo que você nunca tenha acessado esses arquivos intencionalmente!
Por fim, usar "salvar como" e cancelar (não selecionar um nome de arquivo de destino) pode ou não iniciar um download, dependendo da implementação do navegador que você está usando.
fonte
Content-Disposition
cabeçalho HTTP :inline
indica uma visualização no navegador,attachment
um download.curl https://www.google.com/ -H 'User-Agent: I am really a web browser, trust me' >> /dev/null
;)Embora o servidor HTTP não veja o download cancelado, pode haver código Javascript na página que monitora esses eventos.
O Javascript possui manipuladores de eventos que podem ser usados para detectar um clique com o botão direito na imagem, e é bem provável que alguém possa monitorar outros movimentos do mouse para adivinhar qual a escolha que você faz no menu pop-up. Depois disso, o script pode facilmente enviar as informações para o servidor imediatamente ou armazená-las no armazenamento do navegador local e enviá-las mais tarde.
No caso específico da pesquisa de imagens do Google, o Javascript nessa página tem vários manipuladores ouvindo os eventos do mouse. No entanto, o código é ofuscado, portanto, não é fácil dizer que tipo de monitoramento ele faz.
fonte
HEAD
solicitação HTTP em vez de aGET
.Isso depende do servidor.
O servidor poderá se registrar quando o download for iniciado (pense nisso, ele deve saber porque sugere um nome).
O servidor também pode acompanhar quantos bytes foram transferidos e se / quando a conexão foi fechada, o que pode mostrar se o diwnload foi concluído.
Também existem outras possibilidades, como dowloads retomados e downloads multithread - mas, novamente, o servidor pode saber e registrar tudo isso.
Observe que, no caso específico de clicar com o botão direito do mouse e fazer o download de uma imagem, é possível que o download não seja registrado como um download devido ao cache do cliente.
fonte
Content-Disposition: attachment; filename="…"
para que os shows do navegador a transferência rápida, em seguida, mesmo quando cancelar o download do servidor vai saber sobre o pedido - e provavelmente pode até mesmo distinguir que o download foi abortada.Se ... você cancelar antes que algo seja salvo, o "servidor" notará / registrará isso como um download?
Um servidor remoto não deve notar nenhuma atividade de download, pois nenhum download foi iniciado.
No entanto, um servidor remoto sabe que você já baixou a imagem para exibi-la no navegador ... e uma cópia estará no cache do navegador ...
Qualquer "entidade" que monitore sua máquina local diretamente pode registrar algo sobre essa atividade.
fonte
Content-Disposition
cabeçalho conterá o nome do arquivo real.Content-Disposition
cabeçalho (já mencionado a você algumas vezes), o que significa que uma solicitação deve ser feita primeiro. Além disso, os navegadores podem iniciar o download da carga útil antes de você escolher um diretório de destino.