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

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

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

Регистрация: Dec 2011
Сообщений: 70
По умолчанию Flash режет ответ на запрос

Здравствуйте.
Столкнулся вот с такой проблемой. Флэшка отправляет запрос на сервер, а в ответе сервера content_length из заголовка меньше, чем реальная длина ответа. Поэтому ответ обрезается. Можно ли с этим что-нибудь сделать, если код сервера я не могу поправить?
Мой код выглядит так
Код AS3:
_urlRequest = new URLRequest(this._url);
_urlRequest.method = URLRequestMethod.GET;
_urlLoader = new URLLoader();
_urlLoader.dataFormat = URLLoaderDataFormat.TEXT;
_urlLoader.addEventListener(Event.COMPLETE, _onLoaded);
 
private function _onLoaded(event:Event):void
{		
// вот тут всё ломается, потому что конец у XML обрезан
this._resultXML = new XML(event.target.data);
}


Последний раз редактировалось RigidFlasher; 26.02.2014 в 14:30.
Старый 26.02.2014, 14:46
Isfet вне форума Посмотреть профиль Отправить личное сообщение для Isfet Найти все сообщения от Isfet
  № 2  
Ответить с цитированием
Isfet

Регистрация: Mar 2012
Адрес: г.Новосибирск
Сообщений: 381
вот так посмотрите, правильно ли приходит ответ, если все нормально, то проблема когда строка преобразуется в xml

Код AS3:
private function _onLoaded(event:Event):void
{		
trace(event.target.data);
}

Старый 26.02.2014, 14:50
RigidFlasher вне форума Посмотреть профиль Отправить личное сообщение для RigidFlasher Найти все сообщения от RigidFlasher
  № 3  
Ответить с цитированием
RigidFlasher

Регистрация: Dec 2011
Сообщений: 70
Цитата:
Сообщение от Isfet Посмотреть сообщение
вот так посмотрите, правильно ли приходит ответ, если все нормально, то проблема когда строка преобразуется в xml

Код AS3:
private function _onLoaded(event:Event):void
{		
trace(event.target.data);
}
уже смотрел. строка обрезана, поэтому она перестаёт быть валидным XML.

Старый 26.02.2014, 14:58
silin вне форума Посмотреть профиль Посетить домашнюю страницу silin Найти все сообщения от silin
  № 4  
Ответить с цитированием
silin
 
Аватар для silin

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
может быть что-то с ограничением на максимальную длину get запроса, плохо понимаю в этой кухне, чтобы сказать конкретнее

Старый 26.02.2014, 15:02
RigidFlasher вне форума Посмотреть профиль Отправить личное сообщение для RigidFlasher Найти все сообщения от RigidFlasher
  № 5  
Ответить с цитированием
RigidFlasher

Регистрация: Dec 2011
Сообщений: 70
Цитата:
Сообщение от silin Посмотреть сообщение
может быть что-то с ограничением на максимальную длину get запроса, плохо понимаю в этой кухне, чтобы сказать конкретнее
сам запрос достаточно короткий, меньше 255 байт

Старый 26.02.2014, 16:48
Gaen вне форума Посмотреть профиль Отправить личное сообщение для Gaen Найти все сообщения от Gaen
  № 6  
Ответить с цитированием
Gaen
strange mood
 
Аватар для Gaen

модератор форума
Регистрация: Jul 2004
Адрес: Питер
Сообщений: 1,653
Записей в блоге: 1
Отправить сообщение для Gaen с помощью ICQ Отправить сообщение для Gaen с помощью Skype™
Я бы поснифал запросы, чтобы удостовериться, что сервер отдает корректные данные.
__________________
тонкий тролль, осеянный благодатью

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

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

Если с сервером ничего сделать нельзя (руки, например, оторвать серверному программисту), то рекомендую попробовать URLStream
__________________
...вселенская грусть

Старый 27.02.2014, 07:10
RigidFlasher вне форума Посмотреть профиль Отправить личное сообщение для RigidFlasher Найти все сообщения от RigidFlasher
  № 8  
Ответить с цитированием
RigidFlasher

Регистрация: Dec 2011
Сообщений: 70
Цитата:
Сообщение от Gaen Посмотреть сообщение
Я бы поснифал запросы, чтобы удостовериться, что сервер отдает корректные данные.
Да, запросы я снифил. Корректно всё, кроме длины в заголовке.
Цитата:
Сообщение от gloomyBrain Посмотреть сообщение
По-моему, очевидно , что сервер отдает невалидные данные, ведь content-length не соответствует реальной длине.

Если с сервером ничего сделать нельзя (руки, например, оторвать серверному программисту), то рекомендую попробовать URLStream
Посмотрел, но не совсем понял, как им пользоваться в моей ситуации. Судя по всему, там bytesAvalible после окончания загрузки тоже берётся из заголовка.

Старый 27.02.2014, 11:10
Isfet вне форума Посмотреть профиль Отправить личное сообщение для Isfet Найти все сообщения от Isfet
  № 9  
Ответить с цитированием
Isfet

Регистрация: Mar 2012
Адрес: г.Новосибирск
Сообщений: 381
Цитата:
Сообщение от RigidFlasher Посмотреть сообщение
Корректно всё, кроме длины в заголовке.
не могу понять, о каком заголовке идет речь?

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

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

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

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

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

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


 


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


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