2010-04-04 36 views
2

我想將一些XML發送到Flex中的Rails應用程序。我正在使用URLRequest和URLLoader對象。但是,我無法確定如何使用這些Flash對象將XML和_method參數發送到rails應用程序。以下是我目前正在努力實現的目標。Flash/Flex發送XML到Rails應用程序

 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); 

但是,發送到服務器的唯一數據是[Object object]。如果有人能讓我知道我要去哪裏,我會非常感激。謝謝。

+0

你可能會考慮在Corelib中使用JSON。與XML相比,JSON更小且更好地受到支持(以導軌方式)。 – Maz 2010-04-04 00:55:43

回答

2

您可能需要使用URLVariables對象request.data

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

當數據序列化時,我認爲它會採用您期望的格式。我基於這個API description for URLRequest.data

1

舊柱,但也可以是有用的:除了

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

還可以做

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

相關問題