Можно ли определить, загружено ли изображение через img src= "... vs address bar / "как документ"?

можно ли определить, было ли загружено Изображение через:

<img src="image.jpg"/>

по сравнению с адресной строкой или напрямую через:

<a href="image.jpg">Image</a>

спасибо.

2 ответов


нет, в общем-то нет.

браузер выдаст точно такой же запрос для обоих.

когда браузер анализирует HTML (первое, что он получает), каждый дополнительный ресурс (JavaScript, CSS, image и другие связанные файлы) будет запрашиваться отдельно. Браузеры не добавляют информацию о том, откуда они получили ссылку - поэтому невозможно сказать из запроса, было ли это непосредственно в адресной строке или из ссылки на HTML страница.

вы мог бы запросите журналы, чтобы узнать, является ли запрос сам по себе или запрос на HTML-страницу (и, возможно, другие ресурсы) был сделан примерно в то же время. Это не доказательство дурака (подумайте о нескольких уровнях кэширования, которые у нас есть в интернете).


это возможно.
Просто проверьте рефереров!

<img src="image.jpg"/>

реферер будет страница перед изображением

<a href="image.jpg">Image</a>

реферером будет страница, на которой встроено изображение

В противном случае просто добавьте GET param.

<img src="image.jpg?src=img"/>

<a href="image.jpg?src=a">Image</a>

на следующей странице с JS или в журналах apache вы оцениваете GET param без каких-либо побочных эффектов или подводных камней для пользователя.