国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > WEB開發 > 正文

18.2.在Flex程序之間使用RESTful通信

2024-04-27 13:52:25
字體:
來源:轉載
供稿:網友
18.2.1. 問題
我想要整合一個Flex 應用程序和一臺使用RESTful 或者表述性狀態轉移風格通訊的服務器,例如Rails 或者其他服務器。
18.2.2. 解決辦法
創建一個HTTPService 對象來使用合適的路徑通過POST 和GET 方法和你的服務器通訊,呼叫遠端服務器上的方法。
18.2.3. 討論
所謂RESTful 的服務一般被用來描述一個服務使用所有4 個可能的HTTP 頭:PUT,POST,DELETE 以及GET。這四個頭通常對應四種基礎的數據訪問操作:創建,讀取,更新以及刪除,他們一般和常說的CRUD 一起使用。在實踐中,一個單獨的重載的服務端方法以來http頭來執行四種基礎數據訪問操作。在REST 類應用中,方法時常會被映射到資源,這樣四種數據訪問方法,CRUD 允許資源的創建,刪除,更新以及獲取。這個資源可以是簡單資源,數據庫的一個表,或者一個復雜的模型對象。

Flash 播放器限制了只能使用GET 和POST 方法,意思就是任意介于FLEX 應用與服務之間的通訊都需要指明DELETE 或者PUT 方法使用不同與標準REST 的方法,例如附加他們到一個GET 或POST 信息上。

發送一個PUT 命令到一個Rails 應用,你可以這樣做:
+展開
-ActionScript
var request:URLRequest = new URLRequest();
var loader:URLLoader = new URLLoader();
loader.addEventListener(Event.COMPLETE, resultHandler);
loader.addEventListener(IOErrorEvent.IO_ERROR, errorHandler);
loader.addEventListener(HTTPStatusEvent.HTTP_STATUS,httpStatusHandler);
request.url = "http://rails/view/resource";
// Set the request type as POST and send the DELETE command as
// a variable in the data of the request
request.method = URLRequestMethod.POST;
request.data._method = "DELETE";
loader.load(request);

Ror(Ruby on Rails,一種web 敏捷開發框架)在正確的HTTP 方法不能被使用的時候,允許_methdo 變量來申明描述的方法。對于其他類型的REST 類服務,類似的操作都會被使用到。

對于HTTPService 對象,你可以使用BlazeDS 或者Adobe LiveCycle 來配合它。HTTPService定義了一個useProxy 屬性,當它設為true 會指定flash 播放器只與services-config.xml 文件中的服務器定義來通訊。一個請求會建立并且發送一個被代理的PUT/DELETE/OPTIONS(以及其他請求)被發送到Adobe LiveCycle 或者BlazeDS 服務器,然后服務器會建立并且發送實際的HTTP 請求并且返回反饋內容到flash 播放器。代理同時也控制來自于HTTP 500 代碼服務器錯誤的失敗反饋,它可以返回給flash 播放器讓HTTPService 可以處理。

當你配置好HTTPService 對象使用BlazeDS 或者lifecycle 代理之后,你可以在HTTPService上通過設定method 屬性來使用服務器的全部范圍的Http 頭。
+展開
-XML
<mx:HTTPService id="proxyService"
destination="http://localhost/app/url"/>

<mx:Script>
<![CDATA[
private function sendPut():void {
proxyService.method = "DELETE";
proxyService.send("id=2");
}

]]>
</mx:Script>
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 西乌珠穆沁旗| 通城县| 青浦区| 东宁县| 藁城市| 安阳县| 洪雅县| 泾源县| 荃湾区| 昆山市| 桃源县| 库车县| 邻水| 平乡县| 五原县| 定州市| 怀远县| 增城市| 彩票| 梅河口市| 桦甸市| 务川| 大足县| 阳新县| 德昌县| 安西县| 沙坪坝区| 天全县| 河曲县| 龙海市| 应用必备| 镇原县| 富平县| 新竹县| 驻马店市| 石狮市| 和林格尔县| 遵化市| 澄江县| 汤原县| 龙胜|