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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 04.02.2009, 16:01
DarkLight вне форума Посмотреть профиль Отправить личное сообщение для DarkLight Посетить домашнюю страницу DarkLight Найти все сообщения от DarkLight
  № 11  
Ответить с цитированием
DarkLight
ветеран форума
 
Аватар для DarkLight

Регистрация: May 2006
Адрес: Москва
Сообщений: 2,978
Отправить сообщение для DarkLight с помощью ICQ Отправить сообщение для DarkLight с помощью Skype™
Цитата:
2) XML можно прочитать только ту часть, которую флеш считает xml-ем
Вместо onLoad используйте onData, и сможете прочитать все
__________________
4am is time to rock

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

блогер
Регистрация: Mar 2008
Адрес: РФ, Санкт-Петербург
Сообщений: 2,272
Записей в блоге: 5
Отправить сообщение для gloomyBrain с помощью ICQ Отправить сообщение для gloomyBrain с помощью Skype™
а разве onData вызывается по окончании загрузки? ну, то есть если сделать проверку на число загруженных байт, тогда да
__________________
...вселенская грусть

Старый 04.02.2009, 17:03
qazwsx вне форума Посмотреть профиль Найти все сообщения от qazwsx
  № 13  
Ответить с цитированием
qazwsx
Banned
[+5 15.02.09]
[++5 15.02.09]

Регистрация: Mar 2008
Адрес: Krasnoyarsk
Сообщений: 587
Код AS1/AS2:
onData = function(src:String) {}
Invoked when data has completely downloaded from the server or when an error occurs while data is downloading from a server.

Из хелпа

Старый 04.02.2009, 18:05
DrSmyrke вне форума Посмотреть профиль Отправить личное сообщение для DrSmyrke Найти все сообщения от DrSmyrke
  № 14  
Ответить с цитированием
DrSmyrke
 
Аватар для DrSmyrke

Регистрация: Jun 2008
Сообщений: 28
Цитата:
Сообщение от gloomyBrain Посмотреть сообщение
Вот что накидал по-быстрому
Код AS1/AS2:
var lv:LoadVars= new LoadVars();
lv.onLoad=function(success:Boolean){
	if(success){
		trace("Здесь будет отображение в виде LoadVars")
		trace(unescape(String(this)))
		trace("\n\n")
	}else{
		trace("error loading string")
	}
}
lv.load("http://google.ru")
//
// тоже самое с xml
//
var xm:XML=new XML()
xm.ignoreWhite=true
xm.onLoad = function(success:Boolean){
	if(success){
		trace(this)
	}else{
		trace("error loading xml")
	}
}
xm.load("http://google.ru")
Однако, заметил, что
1) LoadVars грузит не все, а только некоторый объем(видимо есть макс. предел)
2) XML можно прочитать только ту часть, которую флеш считает xml-ем
Как загружать я понял, искать между тегами как будет?

Старый 04.02.2009, 18:46
gloomyBrain вне форума Посмотреть профиль Отправить личное сообщение для gloomyBrain Найти все сообщения от gloomyBrain
  № 15  
Ответить с цитированием
gloomyBrain
 
Аватар для gloomyBrain

блогер
Регистрация: Mar 2008
Адрес: РФ, Санкт-Петербург
Сообщений: 2,272
Записей в блоге: 5
Отправить сообщение для gloomyBrain с помощью ICQ Отправить сообщение для gloomyBrain с помощью Skype™
Цитата:
Из хелпа
...да
Дыра в памяти =), почему-то считал, что это событие сродни onProgress и тп
кстати, тоже из хелпа, потому и О_о:
Цитата:
Whenever you receive data from the server, the data event (flash.events.DataEvent.DATA) is dispatched
В любом случае, тот же гугл возвращается не полностью (я имею ввиду что скрипты грузятся только через LoadVars - это по факту работы загрузки - а вот само тело страницы возвращается корректно только через xml)

Исходя из того, что имеем и того, что сказал DarkLight, я бы сделал так:
1) преобразовал загруженный xml (по событию onData) в строку
2) для этой строки использовал бы indexOf для нахождения интересующего нас участка (его начала и конца)
3) ну а соль-перец по вкусу, далее делаем чего хотели с самого начала
__________________
...вселенская грусть

Старый 05.02.2009, 11:35
qazwsx вне форума Посмотреть профиль Найти все сообщения от qazwsx
  № 16  
Ответить с цитированием
qazwsx
Banned
[+5 15.02.09]
[++5 15.02.09]

Регистрация: Mar 2008
Адрес: Krasnoyarsk
Сообщений: 587
Зачем вообще было чтото писать после моего примера?.

P.S LoadVars.load использую загружается полностью все никаких XML не надо
P.P.S Собитию onData передается a:Object не строка и не XML
P.P.P.S LoadVars.load, sendAndLoad, XML.load, sendAndLoad выдают 1 и тотже результат по оканчанию загрузки

Старый 05.02.2009, 13:55
Vasyaga вне форума Посмотреть профиль Отправить личное сообщение для Vasyaga Найти все сообщения от Vasyaga
  № 17  
Ответить с цитированием
Vasyaga

Регистрация: Feb 2009
Адрес: WS
Сообщений: 93
И еще маленькое замечание - строка:
Код AS1/AS2:
lv.load('http://google.ru');
В браузере работать будет только в случае если в корне домена 'http://google.ru' (и любого другого, с которого Вы загружаете данные лежит файлик 'crossdomain.xml' c разрешением доступа от вашего домена (yourdomain.ru), где лежит флэшка:
Код:
<allow-access-from domain="yourdomain.ru" />
В большинстве случаев это будет недостижимо.
Есть еще один способ загрузки данных из другого домена - использовать прокси на вашем сервере, который будет забирать запросы от flash и перенаправлять их по нужному URL.

Старый 05.02.2009, 15:13
gloomyBrain вне форума Посмотреть профиль Отправить личное сообщение для gloomyBrain Найти все сообщения от gloomyBrain
  № 18  
Ответить с цитированием
gloomyBrain
 
Аватар для gloomyBrain

блогер
Регистрация: Mar 2008
Адрес: РФ, Санкт-Петербург
Сообщений: 2,272
Записей в блоге: 5
Отправить сообщение для gloomyBrain с помощью ICQ Отправить сообщение для gloomyBrain с помощью Skype™
Цитата:
Зачем вообще было чтото писать после моего примера?
qazws, действительно, зачем? Ведь следующее что написано после вашего примера это:
Цитата:
Как загружать я понял, искать между тегами как будет?
Цитата:
LoadVars.load, sendAndLoad, XML.load, sendAndLoad выдают 1 и тотже результат по оканчанию загрузки
У меня XML.load давал НЕ то же самое, что и LoadVars.load
2 Vasyaga
Самое удивительное, что работает без crossdomain.xml
проверял через сайт (у них этого файла и в помине нет =))
__________________
...вселенская грусть

Старый 05.02.2009, 15:24
Vasyaga вне форума Посмотреть профиль Отправить личное сообщение для Vasyaga Найти все сообщения от Vasyaga
  № 19  
Ответить с цитированием
Vasyaga

Регистрация: Feb 2009
Адрес: WS
Сообщений: 93
Цитата:
Сообщение от gloomyBrain Посмотреть сообщение
2 Vasyaga
Самое удивительное, что работает без crossdomain.xml
проверял через сайт (у них этого файла и в помине нет =))
Такого файла нет, но по запросу http://florall.ru/crossdomain.xml он не выдаёт ошибку 404, а возвращает главную страницу сайта! Видимо парсер crossdomain.xml воспринимает ее как разрешающую доступ (может символ '*' видит ?).

Вам в любом случае придется создавать какой-то back-end на сервере хотя бы для проксирования запросов. Не говоря уже о кешировании. Да и синтакс-анализ лучше делать средствами сервера, а не во флэш, и передавать во флэш данные в удобоваримом формате.

Старый 05.02.2009, 16:00
qazwsx вне форума Посмотреть профиль Найти все сообщения от qazwsx
  № 20  
Ответить с цитированием
qazwsx
Banned
[+5 15.02.09]
[++5 15.02.09]

Регистрация: Mar 2008
Адрес: Krasnoyarsk
Сообщений: 587
Цитата:
Сообщение от gloomyBrain Посмотреть сообщение
qazws, действительно, зачем? Ведь следующее что написано после вашего примера это:



У меня XML.load давал НЕ то же самое, что и LoadVars.load
2 Vasyaga
Самое удивительное, что работает без crossdomain.xml
проверял через сайт (у них этого файла и в помине нет =))
Вообщето это было написанно с коментарием твоего кода). Да и кроме того ответ на вопрос был дан, а он уже может дальше разбиратся с кодом сам, модифицировать его изменять и тд.

P.S Самое удивителньое что вы во Flash IDE проверяли? если да то плеер во Flash IDE Запускается как "доверенный" и может получить доступ к чему угодно(в сети).

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

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

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


 


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


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