Flash / Flex отправляет XML в приложение Rails - PullRequest
2 голосов
/ 04 апреля 2010

Я пытаюсь отправить XML в приложение rails во Flex. Я использую объекты URLRequest и URLLoader. Однако у меня возникают проблемы с определением способа отправки параметров XML и _method в приложение rails с помощью этих flash-объектов. Ниже показано, как я сейчас пытаюсь этого добиться.

        var request:URLRequest = new URLRequest();
        request.method = URLRequestMethod.POST;
        request.data = new Object();
        request.data.xml = Blog.xml.toXMLString();
        request.contentType = "text/xml";
        var loader:URLLoader = new URLLoader();
        loader.addEventListener(Event.COMPLETE, saveCompleteHandler);
        var saveUrl:String = "";
        saveUrl = BASE_URL;

        if (Blog.isNewBlog)
        {
            // Set the rails REST method.
            request.data._method = "POST";
            saveUrl += "blogs.xml";
        }
        else
        {
            // Set the rails REST method.
            request.data._method = "PUT";
            saveUrl += "blogs/" + Blog.id.toString() + ".xml";
        }
        request.url = saveUrl;
        //trace(request.data.toString());
        loader.load(request);

Однако единственными данными, которые отправляются на сервер, является [Объект объекта]. Если бы кто-нибудь мог сообщить мне, где я иду не так, я был бы очень благодарен. Спасибо.

Ответы [ 2 ]

2 голосов
/ 04 апреля 2010

Вы, вероятно, хотите использовать URLVariables объект для request.data.

var request:URLRequest = new URLRequest();
request.data = new URLVariables();
request.data.xml = Blog.xml.toXMLString();
...

Когда данные сериализуются, я думаю, они будут в том формате, который вы ожидали. Я основываюсь на описании API для URLRequest.data .

1 голос
/ 16 марта 2011

Старый пост, но может быть полезен: кроме

request.data.xml = Blog.xml.toXMLString ();

Вы также можете сделать

request.data ['xml'] = Blog.xml.toXMLString ();

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