標籤:flex webservice
WebService端代碼
/// <summary> /// 上傳檔案到遠程伺服器 /// </summary> /// <param name="fileBytes">檔案流</param> /// <param name="fileName">檔案名稱</param> /// <returns>字串</returns> [WebMethod(Description = "上傳檔案到遠程伺服器.")] public string UploadFile(byte[] fileBytes, string fileName) { try { MemoryStream memoryStream = new MemoryStream(fileBytes); //1.定義並執行個體化一個記憶體流,以存放提交上來的位元組數組。 FileStream fileUpload = new FileStream(Server.MapPath(".") + "\\" + fileName, FileMode.Create); ///2.定義實際檔案對象,儲存上傳的檔案。 memoryStream.WriteTo(fileUpload); ///3.把記憶體流裡的資料寫入物理檔案 memoryStream.Close(); fileUpload.Close(); fileUpload = null; memoryStream = null; return "檔案已經上傳成功"; } catch (Exception ex) { return ex.Message; } }
Flex用戶端代碼
<?xml version="1.0" encoding="utf-8"?><s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600" creationComplete="application1_creationCompleteHandler(event)"><fx:Script><![CDATA[import mx.controls.Alert;import mx.events.FlexEvent;import mx.graphics.codec.JPEGEncoder;import mx.rpc.events.FaultEvent;import mx.rpc.events.ResultEvent;protected function application1_creationCompleteHandler(event:FlexEvent):void{var width :int = imgID.width; var height :int = imgID.height; var bitmapData:BitmapData =new BitmapData(width,height); bitmapData.draw(imgID); var byteArr:ByteArray = bitmapData.getPixels(new Rectangle(0,0,width,height)); var byteArr123:ByteArray =new JPEGEncoder().encodeByteArray(byteArr,width,height); webService.UploadFile(byteArr123,"123.png");}protected function webService_faultHandler(event:FaultEvent):void{Alert.show(event.fault.toString());}protected function webService_successHandler(event:ResultEvent):void{Alert.show(event.result.toString());}]]></fx:Script><fx:Declarations><!-- 將非可視元素(例如服務、值對象)放在此處 --><s:WebService id="webService" wsdl="http://10.19.1.48/upImg/Service1.asmx?WSDL" fault="webService_faultHandler(event)"> <s:operation name="UploadFile" result="webService_successHandler(event)"></s:operation> </s:WebService> </fx:Declarations><mx:Image id="imgID" x="186" y="103" width="583" height="397" source="file:/G:/360雲端硬碟/照片/2013Beijing MapOfSubway.jpg"/></s:Application>