Ошибка Flex при использовании службы HTTP

Привет, я пробую простое руководство по получению RSS-каналов с Yahoo и продолжаю получать эту ошибку:

RPC Fault faultString = "Ошибка безопасности при доступе к URL" faultCode = "Channel.Security.Error" faultDetail = "Destination: DefaultHTTP"

Я видел несколько статей, в которых говорится, что мне нужен файл crossdomain.xml, но я действительно не знаю, как настроить этот файл и как его использовать из компилятора Flex SDK (mxmlc).

Спасибо


person Jaime Garcia    schedule 17.12.2010    source источник
comment
Это браузер или настольное приложение? Каков URL-адрес служб, к которым вы пытаетесь обратиться? SWF-файл находится на другом хосте, чем службы?   -  person James Ward    schedule 17.12.2010
comment
Было бы полезно, если бы вы могли опубликовать код, извлекающий RSS   -  person Cornel Creanga    schedule 17.12.2010
comment
Вам не нужен crossdomain.xml, но нужен сайт, к которому вы обращаетесь. Режим отладки? Запуск с сервера? и что спросил J.W   -  person Drenai    schedule 17.12.2010


Ответы (1)


Файл crossdomain.xml должен находиться в корне сервера, к которому вы обращаетесь. Если они не поместили это туда, то вам не повезло при запуске в браузере. Это часть важного аспекта безопасности при работе в изолированной программной среде браузера (Silverlight имеет такое же ограничение). От него отказываются, если вы работаете в Air (или почти в любом другом браузере).

Допустим, вы пытаетесь получить данные с http://foo.com/rest/rss/all (или что-то в этом роде). Вы можете быстро проверить, разрешают ли они межсайтовый скриптинг (XSC), перейдя по адресу http://foo.com/crossdomain.xml. Если его там нет, то вы не сможете этого сделать.

Тем не менее, ваши комментарии по поводу дополнительной информации помогут нам дать вам лучший ответ.

person Brian Genisio    schedule 17.12.2010
comment
Спасибо, ваш ответ очень хорошо это объясняет. - person Jaime Garcia; 18.12.2010