您的位置:首页 > 编程语言 > Java开发

flex的air请求java

2016-07-13 17:50 169 查看
如题。

flex怎么去访问java呢?百度上搜了一大堆,结果呢:1、有说用RemoteObject、有说用httpService的,这些都是flex的web请求服务器;

2、多数是flex请求asp或者.net的,原创的没有几个。

air请求网络用的是URLRequest和urlLoader。

废话不多说了,代码如下:

flex端:

              request= new URLRequest("http://127.0.0.1:8080/CairngormProject/appLogin.do");//这里定义定义请求的url以及方法

               request.contentType="application/x-www-form-urlencoded";//请求的mime内容类型。这里用的是默认的。如果要上传文件,则要用下面的类型。

                //request.contentType="multipart/form-data; boundary="+UploadPostHelper.getBoundary();

                request.requestHeaders.push(new URLRequestHeader( 'SOAPAction', 'text/plain'));

                request.method=URLRequestMethod.GET;//用get action能够接收到,用post却接收不到,不知道哪里不对,所以就先用get了。

                

                var vari:URLVariables=new  URLVariables();

                

                var parameter:Object = new Object();

                parameter.userName = userName;

                parameter.userPass = userPass;

                var parameter2Str:String = com.adobe.serialization.json.JSON.encode(parameter);

                

                vari.str =BaseUtil.getBase64Encoder(parameter2Str);//这儿用base64加密,是因为我传的是json串。里面的一些特殊字符给转义掉了,action接收到后比较难处理。用base64加密后,action接收到经过解密在转成json就可以直接用了

                

                request.data= vari;

                

                var loader:URLLoader = new URLLoader();

                loader.dataFormat=URLLoaderDataFormat.BINARY;

                try{

                    loader.load(request);//这里是发送请求

                    loader.addEventListener(Event.COMPLETE, uploadOnComplete);//自定义的请求成功处理方法

                    loader.addEventListener(IOErrorEvent.IO_ERROR,onIOError);//自定义的请求失败处理方法

                }catch(error:Error){

                    Alert.show("Unable to load requested document.");

                }

java端:

获的flex传递的内容一句话:String data = request.getQueryString();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  flex java air action