Данные POST для приложения Flex / Flash (mxml) - PullRequest
2 голосов
/ 19 февраля 2010

У меня есть приложение Flex, требующее фильтрации пользователей в зависимости от их групп баз данных.В зависимости от того, к какой группе они относятся, это файл config.xml, который используется для заполнения SWF.

Вот как я понимаю, как это сделать:1. Клиент заходит на страницу .aspx с формой, требующей имя пользователя и пароль.
2. На стороне сервера я подтверждаю учетные данные пользователя
3. После того, как имя пользователя / пароль верны, я перенаправляю в файл mxml с файлом config.xml в заголовках html (post).

Моя проблема возникает, когда мне нужно получить данные поста из http-запроса.Допустим, у меня есть этот код:

<mx:Application initialize="init()">

    <mx:Script>
        <![CDATA[
            private function init():void
            {
                // get the post data here
            }

            /* More code here */
        ]]>
    </mx:Script>

</mx:Application>

Как получить данные постов в функции init ().

Спасибо.

Ответы [ 2 ]

2 голосов
/ 22 февраля 2010

Для тех, кому это будет интересно, я нашел несколько ресурсов в центре ресурсов Adobe Flex 3.

В принципе, в настоящее время нет способа передачи данных методом POST. Вы можете добавить параметры в конце вашего swf url (метод GET), как показано здесь: http://livedocs.adobe.com/flex/3/html/help.html?content=deep_linking_5.html#245869

Другой способ - встроить их в страницу с помощью метода flashVars, показанного здесь: http://livedocs.adobe.com/flex/3/html/help.html?content=passingarguments_3.html#229997

Если вам все еще интересно, как мне удастся это сделать, если вы столкнетесь с такой же ситуацией. Вот моя идея (не стесняйтесь поделиться, если у вас другое видение):

1.Пользователь регистрируется в login.aspx
2. В зависимости от учетных данных пользователей код на стороне сервера изменяет файл index.html, чтобы встроить правильный файл XML в объект Flash.
3.С помощью метода FlashVars я получаю путь к файлу xml и проделанную работу!

Если вы столкнулись с подобной ситуацией и вам нужна помощь, свяжитесь со мной.

0 голосов
/ 19 февраля 2010

Я не думаю, что можно получить данные POST, но у других может быть способ.Альтернативным решением может быть:

  1. Пользователь входит в систему: login.aspx
  2. Пользователь, направленный на Flash-контент: content.html embedding content.swf
  3. Конфигурация Flash-запросов.xml с сервера: content.swf делает HTTP-запрос для config.xml.aspx
  4. Сервер предоставляет конфигурацию пользователя в config.xml.aspx

В вашей функции init() вы бы сделалиURLLoader запрос на получение конфигурации, и вы выполняете настройку в обработчике Event.COMPLETE.

Другая возможность - использовать HTTP-куки - они не обрабатываются непосредственно Flash, но вы можете получить к ним доступ.через Javascript - см. этот CookieUtil класс.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...