Поддержка сайта

Высокие позиции в поисковой системе, на прямую зависят от развития вашего сайта.

Продвижение сайтов

Эффективность стратегий продвижения подтверждается сотрудничеством с крупными клиентами и отзывами о нашей работе.

Создание сайтов

Мы делаем сайты быстро, недорого и профессионально. От работы с нами, у вас останутся только положительные эмоции.

Ошибки системы безопасности, связанные с getlmageData

.

Ошибки системы безопасности, связанные с getlmageData

Если вы попробовали этот код в браузере Chrome или Firefox, возможно, у вас ничего не получилось и изображение на холсте по-прежнему цветное. Причина в том, что в этих двух браузерах возникает ошибка при попытке преобразовать в браузере изображение, находящееся на том же самом компьютере. Это связано с работой системы безопасности, хотя в нашем случае никакой угрозы безопасности нет.

Реальная угроза, которую пытаются предотвратить Chrome и Firefox возникает, когда пользователь из одного домена обрабатывает изображения, принадлежащие другому домену. Можно себе представить, к примеру, что кто-то попытается изменить официальный логотип компании Google — это следует предотвратить.

Вот что сказано в спецификации W3C Canvas: существует опасность утечек, если сценарий, имеющий одно происхождение, изменяет информацию (т.е. пикселы), имеющую другое происхождение. Чтобы предотвратить это, элементы canvas должны иметь флаг, подтверждающий чистоту происхождения информации (origin-clean flag).

Этот флаг устанавливается в значение false, если изображение, которое вы хотите обработать, находится на другом домене, отличном от того, с которого запущен сценарий JavaScript.

К несчастью, в браузерах Chrome и Firefox этот флаг принимает значение false также и в том случае, когда вы обрабатываете файлы, расположенные на вашем собственном жестком диске — они рассматриваются как файлы, принадлежащие другому домену.

Если вы хотите протестировать операции с пикселами в Firefox или Chrome, вам нужно либо запустить веб-сервер на локальном компьютере (http://localhost/), либо сделать это онлайн на настоящем сервере.


.

Читайте так же:
Not found