Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 25.01.2012, 02:25
searinox вне форума Посмотреть профиль Отправить личное сообщение для searinox Найти все сообщения от searinox
  № 1  
Ответить с цитированием
searinox

Регистрация: May 2011
Сообщений: 76
По умолчанию Загрузка последней версии флешки

Как сделать так что бы браузер пользователя, когда он очередной раз входит на сайт, загружал самую последнюю версию флешки, а не использовал ту которую уже загрузил?


Последний раз редактировалось searinox; 25.01.2012 в 03:48.
Старый 25.01.2012, 10:37
carrotoff вне форума Посмотреть профиль Отправить личное сообщение для carrotoff Найти все сообщения от carrotoff
  № 2  
Ответить с цитированием
carrotoff
 
Аватар для carrotoff

Регистрация: May 2010
Сообщений: 543
В url, по которому загружается swf, добавлять случайный параметр. Тема избитая.

Код AS3:
url += "?rnd="+new Date().getTime();
__________________
Вы грабите бедных людей. Парень со свирелью накажет вас. Хонгильдон (с)

Старый 25.01.2012, 21:30
searinox вне форума Посмотреть профиль Отправить личное сообщение для searinox Найти все сообщения от searinox
  № 3  
Ответить с цитированием
searinox

Регистрация: May 2011
Сообщений: 76
В лоадер добавляется? Или в саму загружаемую флешку? Если честно, я не до конца не понял тебя.

Старый 25.01.2012, 21:42
Inet_PC вне форума Посмотреть профиль Отправить личное сообщение для Inet_PC Посетить домашнюю страницу Inet_PC Найти все сообщения от Inet_PC
  № 4  
Ответить с цитированием
Inet_PC
 
Аватар для Inet_PC

Регистрация: Feb 2009
Адрес: Гы...поди, найди!
Сообщений: 853
Записей в блоге: 1
В лоадере:
Код AS3:
loader.load(new URLRequest(url += "?rnd="+new Date().getTime()));
Где url адрес загружаемой флешки.
__________________
http://www.chessmax.ru

Старый 25.01.2012, 22:11
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 5  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Я припоминаю только один вменяемый способ. Он завязан на сервер, отдающий вместо new Date().getTime() признак измененного файла swf. В остальных случаях вы будете получать файл из кэша браузера.

new Date().getTime() заставит всегда загружать swf. Мне это очень не нравится. И моим пользователям тоже.
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Старый 25.01.2012, 22:48
searinox вне форума Посмотреть профиль Отправить личное сообщение для searinox Найти все сообщения от searinox
  № 6  
Ответить с цитированием
searinox

Регистрация: May 2011
Сообщений: 76
Странная какая-то конструкция. Кто-то может объяснить как она работает? Что делает "?rnd=" ?

Добавлено через 2 минуты
dimarik А можно немного подробнее об этом признаке?

Старый 25.01.2012, 23:03
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 7  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Цитата:
Сообщение от searinox Посмотреть сообщение
Что делает "?rnd=" ?
Он делает запрос уникальным для браузера, заставляя последний запрашивать файл с сервера. Можно убрать этот rnd вовсе, оставив текущее время. Именно оно сделает ваш запрос уникальным, т.к. полученная строка почти никогда не повторится.
Код AS3:
url + "?"+new Date().getTime()

Цитата:
Сообщение от searinox Посмотреть сообщение
dimarik А можно немного подробнее об этом признаке?
Вместо прямой загрузки swf сначала считываете с серверного скрипта размер этой swf. Затем уже в качестве "rnd" задаете это число

Пример

1) Клиентский скрипт на странице спрашивает size.php (100500 байтов)
2) Клиентский скрипт просит загрузить 'application.swf?100500'

Байты не самый надежный источник уникальности. Можно хеш подсчитывать. Это оч круто будет.
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Старый 25.01.2012, 23:08
searinox вне форума Посмотреть профиль Отправить личное сообщение для searinox Найти все сообщения от searinox
  № 8  
Ответить с цитированием
searinox

Регистрация: May 2011
Сообщений: 76
байты кажутся мне весьма неплохим источником. Если была скомпилирована новая флешка то к-во байтов в ней с очень большой вероятностью будет уникальным, по крайне мере, по сравнению с предыдущей версией.

Добавлено через 30 секунд
Спасибо всем за ответы, вы очень помогли.

Старый 25.01.2012, 23:16
carrotoff вне форума Посмотреть профиль Отправить личное сообщение для carrotoff Найти все сообщения от carrotoff
  № 9  
Ответить с цитированием
carrotoff
 
Аватар для carrotoff

Регистрация: May 2010
Сообщений: 543
Цитата:
new Date().getTime() заставит всегда загружать swf. Мне это очень не нравится. И моим пользователям тоже.
Ну такой вариант может пригодиться исключительно в процессе разработки. У нас, например, при инициализации приложения загружается всегда уникальный xml с настройками, включающий в себя адреса необходимых файлов и их версии. Ну и, соответственно, запрос строится по принципу имя_файла?версия.
__________________
Вы грабите бедных людей. Парень со свирелью накажет вас. Хонгильдон (с)

Старый 25.01.2012, 23:16
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 10  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Вероятно, можно просто изменить один из идентификаторов, например, переименовав класс, оставив длину имени точно такой же. Размер прежней и новой флешки совпадет. Оч круто по хешу брать.

Добавлено через 1 минуту
Цитата:
Сообщение от carrotoff Посмотреть сообщение
Ну такой вариант может пригодиться исключительно в процессе разработки. У нас, например, при инициализации приложения загружается всегда уникальный xml с настройками, включающий в себя адреса необходимых файлов и их версии. Ну и, соответственно, запрос строится по принципу имя_файла?версия.
Недобитый лоадер. Он как у вас обновляется? )
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Создать новую тему Ответ Часовой пояс GMT +4, время: 09:23.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 09:23.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.