Запросы веб-службы

Flash Player 9 и более поздних версий, Adobe AIR 1.0 и более поздних версий

Существует множество основанных на протоколе HTTP веб-служб. Основные типы включают:

  • REST

  • XML-RPC

  • Протокол SOAP

Чтобы использовать веб-службу в среде ActionScript 3, создайте объект URLRequest, определите вызов веб-службы с использованием переменных URL-адреса или документа XML и передайте вызов в службу с помощью объекта URLLoader. Среда Flex содержит несколько классов, которые облегчают использование веб-служб и особенно полезны при доступе к сложным службам SOAP. Начиная с версии Flash Professional CS3, классы Flex можно использовать в приложениях, разработанных в среде Flash Professional, а также приложениях, разработанных в среде Flash Builder.

В основанных на коде HTML приложениях AIR можно использовать классы URLRequest и URLLoader или класс Javascript XMLHttpRequest. При необходимости можно также создать библиотеку SWF, распространяющую компоненты служб среды Flex в код Javascript.

Когда приложение выполняется в браузере, можно использовать только веб-службы, находящиеся в том же интернет-домене, что и вызывающий SWF-файл, если только на сервере, на котором размещена веб-служба, также не содержится файл политики взаимодействия доменов, который разрешает доступ из других доменов. Методом, который часто используется, когда файл политики взаимодействия доменов недоступен, является представление запросов через собственный сервер. Adobe Blaze DS и Adobe LiveCycle поддерживают представление веб-службы.

В приложениях AIR файл политики взаимодействия доменов не требуется, если вызов веб-службы выполняется из изолированной программной среды приложения. Содержимое приложения AIR никогда не обслуживается из удаленного домена, поэтому оно не участвует в типах атак, запрещенных политиками взаимодействия доменов. В основанных на коде HTML приложениях AIR содержимое в изолированной программной среде приложения может выполнять запросы XMLHttpRequests между доменами. Можно разрешить содержимому в других изолированных программных средах выполнять междоменные запросы XMLHttpRequests, если содержимое загружено в iframe.