2011-08-12 8 views
1

У меня есть веб-приложение, разработанное с использованием as3. Проблема в том, что это приложение загружает некоторые файлы изображений и добавляет к ним мой водяной знак. Что происходит, так это то, что эти изображения кэшируются браузером, позволяя пользователям, которые знают, как получить доступ к папке tmp, чтобы получить эти файлы без моего водяного знака.Как отключить кеширование изображений as3?

Добавление водяного знака ранее к изображению не является альтернативой для меня, потому что, когда пользователь премиум-класса, зарегистрированный в водяном знаке, не добавляется.

Как отключить кеширование?

Спасибо.

ответ

3

Возможно, вам придется применить водяной знак к серверу изображений, например, используя PHP, а затем загрузить изображение во Flash. использование PHP также должно отключить способность пользователей получать местоположение вашего необработанного изображения, декомпилировав ваш .swf (что очень легко сделать).

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

+0

как я писал, добавление водяного знака ранее не было для меня решением, потому что водяной знак не следует добавлять, когда пользователь вошел в систему. Так что, даже если бы у меня было 2 файла, один с водяным знаком и другими без него, он выиграл Помогите. – valter

+2

Почему вы не можете предоставить два изображения, один для премиум-класса? Это не имеет смысла. –

+0

^потому что кто-то забрасывает мои изображения, просто нужен премиум-аккаунт, чтобы получить изображение без водяного знака. – valter

0

Вы упомянули, что добавление серверной стороны с водяной меткой не является возможным. Если это так, вы не найдете решения. Flash загружает изображения с использованием HTTP, что означает, что каждый браузер отправит запрос заголовка HTTP. Таким образом, любой относительно продвинутый пользователь может видеть HTTP-трафик с сервера и получать изображение. Им не нужна вспышка, или каталог temp или что-то в этом роде, чтобы получить ее. Они просто запрашивают ресурс снова, и ваш сервер будет обслуживать его.

Единственное решение этой проблемы - серверная.

0

Вы не можете делать эту клиентскую сторону.
Невозможно разместить изображение в папке с кешем.
Плюс, если клиент действительно хотел, чтобы они могли просто использовать HTTPFox и захватить местоположение файла и загрузить его напрямую.
Лучше всего использовать imagemagick или библиотеку, подобную этой, и добавить знак воды прямо в изображение.
Вам нужно проверить сеанс пользователя и, если он премиум, или нет.
Затем передайте изображение с отметкой или без нее.

Смежные вопросы