>php教程 >PHP开发 >Flex는 웹 서비스를 사용하여 코드 구현을 위해 사진을 업로드합니다.

Flex는 웹 서비스를 사용하여 코드 구현을 위해 사진을 업로드합니다.

高洛峰
高洛峰원래의
2016-12-27 17:38:461364검색

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>

更多flex利用webservice上传照片实现代码相关文章请关注PHP中文网!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.