Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   HTTPStatusEvent.HTTP_RESPONSE_STATUS - получение заголовков ответа сервера (http://www.flasher.ru/forum/showthread.php?t=208587)

PainKiller 01.08.2014 17:43

HTTPStatusEvent.HTTP_RESPONSE_STATUS - получение заголовков ответа сервера
 
Я делаю GET запрос на определенный URL, в ответе сервера приходит заголовок Location, который перенаправляет на другую страницу. Все эти заголовки я вижу в консоли браузера. Я попытался отследить этот location в AIR приложении и столкнулся с такой интересной штукой - в слушатель события HTTPStatusEvent.HTTP_RESPONSE_STATUS повешенный на URLLoader, в параметр responseHeaders приходит только 4 заголовка из 10 которые я вижу в браузере.
Вот пример:
Цитата:

Content-Type: text/html
Content-Length: 474
Expires: Fri, 01 Aug 2014 13:32:18 GMT
Last-Modified: Tue, 03 Jun 2014 13:35:25 GMT
Вопрос - что делать и можно ли это как то обойти?

Добавлено через 3 минуты
И да гуглил на эту тему и ничего внятного вообще не нашел

Добавлено через 6 минут
и да, забыл сказать в responseURL тоже приходит null

Добавлено через 12 минут
и да нашел вот это в документации:
Цитата:

In Flash Player and in Adobe AIR content outside of the application security sandbox, the following request headers cannot be used, and the restricted terms are not case-sensitive (for example, Get, get, and GET are all not allowed). Also, hyphenated terms apply if an underscore character is used (for example, both Content-Length and Content_Length are not allowed):

Accept-Charset, Accept-Encoding, Accept-Ranges, Age, Allow, Allowed, Authorization, Charge-To, Connect, Connection, Content-Length, Content-Location, Content-Range, Cookie, Date, Delete, ETag, Expect, Get, Head, Host, If-Modified-Since, Keep-Alive, Last-Modified, Location, Max-Forwards, Options, Origin, Post, Proxy-Authenticate, Proxy-Authorization, Proxy-Connection, Public, Put, Range, Referer, Request-Range, Retry-After, Server, TE, Trace, Trailer, Transfer-Encoding, Upgrade, URI, User-Agent, Vary, Via, Warning, WWW-Authenticate, x-flash-version.
Но я че то все равно не понимаю, возможно ли поместить приложение в нужную песочницу, что бы использовать эти заголовки, и как это сделать?

Добавлено через 21 минуту
А эту штуку кто нибудь пробовал? Вроде работает с сокета, может поможет?

Nooob 01.08.2014 18:15

Тоже сталкивался с этой проблемой, все заголовки стандартными способами не получить.
Если AIR то используй Socket на 80 тый порт, реализуй формирование http запроса (либо найди) и коннектся по нужному адресу и ты получишь всю информацию в ответе. ну и редирект нужно будет самому делать при встрече Location.

as3httpclient не пользовался, но в теории должна помочь, но вариант с сокетом хорош только для air. для браузерного флеша нужно реализовывать политику для сокетов и ито если есть доступ к этим серверам

PainKiller 01.08.2014 18:23

Да похоже As3httpclientlib сама http протокол реализует через сокет, буду её использовать отпишу о результатах. Но это конечно жесть, адоб все делает, чтобы работа на флеше была комфортной))

Добавлено через 28 минут
Кстати проблем с безопасностью не будет, если с сервера кроссдоменник по запросу не будет отдаваться? Хотя я вроде нашел в сети примеры, где As3httpclientlib работает без него, но как то странно. В общем отпишу по результатам.

Цитата:

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

dimarik 01.08.2014 23:30

Цитата:

Сообщение от PainKiller (Сообщение 1169959)
Вопрос - что делать и можно ли это как то обойти?

Вот не понял в чем вопрос и зачем что-то обходить. Подробности можно узнать?

PainKiller 03.08.2014 16:57

Цитата:

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


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

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