`
漫漫编程路
  • 浏览: 4370 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

flex 实现HTTP请求的三种方式

 
阅读更多
public function SocketHttpTest():void{
                sock=new Socket();
                sock.addEventListener(Event.CONNECT,_onSktConnected);
                sock.addEventListener(ProgressEvent.SOCKET_DATA,_onSktData);
                sock.addEventListener(IOErrorEvent.IO_ERROR,IOErrorHandler);
                sock.connect(host,port);
            }
           
            public function IOErrorHandler(e:Event):void{
                trace("IO Error");
                trace(e.toString());
            }
           
            public function _onSktConnected(e:Event):void{
                trace("connected....");
                SocketHttpTestSend();
            }
           
            public function _onSktData(e:Event):void{
                trace("IO data");
                var str:String=(e.target as Socket).readMultiByte((e.target as Socket).bytesAvailable,"UTF-8");
                trace(str);
                trace(str.substring(str.indexOf("\r\n\r\n")+"\r\n\r\n".length));
                sock.close();
                init();
            }
           
            public function SocketHttpTestSend():void{
                var header:String="GET /com.broadsoft.xsi-actions/v1.0/user/nionUser1@xdp.broadsoft.com/directories/Enterprise HTTP/1.1\r\n";
//                var header:String="GET /com.broadsoft.xsi-actions/v2.0/user/nionUser1@xdp.broadsoft.com/profile HTTP/1.1\r\n";      
                header+="Accept:*/*\r\n";
                header+="Accept-Language: en-us\r\n";
                header+="Accept-Encoding: gzip, deflate\r\n";
                header+="Host:"+host+"\r\n";
                header+="User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322; CIBA; .NET CLR 2.0.50727)\r\n";
                header+="Cache-Control: no-cache\r\n";
                header+="Connection: Keep-Alive\r\n";
                header+="Authorization: Basic "+getEncodedAuthorization()+"\r\n\r\n";
                var bta:ByteArray=new ByteArray();
                bta.writeUTF(header);
                sock.writeUTFBytes(header);      
                sock.flush();               
            }
           
            public function HTTPServiceTest():void{
                var service:HTTPService=new HTTPService();
                service.url="http://xsp1.xdp.broadsoft.com:80/com.broadsoft.xsi-actions/v2.0/user/nionUser1@xdp.broadsoft.com/profile";
                service.method = "GET";
                service.headers["Authorization"]="Basic "+getEncodedAuthorization();
                service.addEventListener("result", httpResult);
                service.addEventListener("fault", httpFault);
                service.send(); 
            }
           
            public function URLLoaderTest():void{
                var loader:URLLoader=new URLLoader();
                loader.dataFormat=URLLoaderDataFormat.BINARY;
                loader.addEventListener(Event.COMPLETE,test);
               
                var request:URLRequest=new URLRequest("");
                request.method=URLRequestMethod.GET;
               
                var header:URLRequestHeader=new URLRequestHeader("Authorization","Basic "+getEncodedAuthorization());
                request.requestHeaders.push(header);
                trace(header.value);
                loader.load(request);
            }
           
            public function getEncodedAuthorization():String{
                var encoder:Base64Encoder=new Base64Encoder();
                encoder.insertNewLines=false;
                encoder.encode("user:pass");
               
                return encoder.toString();
            }
           
            public function httpResult(event:ResultEvent):void {
                 var faultstring:String = event.message.body.toString();
//                 var faultstring:String = event.result.Profile.details.userId;
                 trace(faultstring);
             }
           
         public function httpFault(event:FaultEvent):void {
                 var faultstring:String = event.fault.faultString;
                 trace(faultstring);
         }
分享到:
评论

相关推荐

    Flex+Struts2+JSON实现Flex和后台的HTTP Service请求

    标题 "Flex+Struts2+JSON实现Flex和后台的HTTP Service请求" 描述了一种技术方案,用于在Flex前端和Java后端之间建立通信。这种通信是通过HTTP Service请求完成的,利用Struts2框架处理业务逻辑,并通过JSON格式交换...

    flex连接数据库的三种方法

    Flex在与后端数据库交互时,提供了多种方式来实现数据的获取和更新,主要可以分为以下三种: 1. **HttpService** HttpService是Flex中用于发送HTTP请求的标准服务组件。通过这个组件,Flex可以直接获取XML格式的...

    flex实现多文件上传

    综上所述,使用Flex实现多文件上传涉及了文件选择、HTTP请求、进度监控等多个环节。通过合理地组织代码和优化用户体验,我们可以创建一个功能完备且用户友好的多文件上传功能。在实际开发中,可能还需要根据具体需求...

    Flex连接数据库的3种方式

    本文将详细介绍Flex连接数据库的三种常用方式:HttpService、WebService以及RemoteObject,并以Flex 3.0 + Java + SQL Server为例,重点讲解如何使用RemoteObject来获取数据库中的公告信息。 #### HttpService简介 ...

    Flex连接数据库三种方法

    Flex 连接数据库的方法主要涉及三种技术:HttpService、WebService 和 RemoteObject。这些技术都是 Flex 与后端服务器交互的手段,因为Flex本身并不具备直接访问数据库的能力,必须通过服务端代理来实现。 1. **...

    flex请求webservice

    Flex请求Web服务是一种在客户端与服务器之间进行数据交互的技术,主要应用于富互联网应用程序(RIA)开发。本示例提供了一个入门级别的教程,帮助开发者理解如何使用Flex与Web服务进行通信。 1. Flex简介: Flex是...

    Flex使用HttpService以键值对的形式发送请求,Java使用Servlet接收

    在这个场景中,Flex使用`HttpService`组件向Java的Servlet发送键值对形式的数据,而Servlet负责处理这些请求并返回响应数据。下面将详细介绍这一过程。 首先,Flex中的`HttpService`是ActionScript 3(AS3)的一个...

    Flex连接数据库的三种方法

    【Flex连接数据库的三种方法详解】 Flex作为一款强大的RIA(富互联网应用)开发框架,虽然无法直接连接数据库,但它可以通过几种间接方式与数据库交互。在本文中,我们将深入探讨Flex连接数据库的三种主要方法:...

    flex与JAVA三种交互方式的源代码与视频教程

    本教程将深入探讨Flex与Java的三种交互方式,帮助开发者更好地理解和实现跨平台的Web应用。 1. AMF(Action Message Format)交互: AMF是Adobe提供的二进制数据格式,它能高效地传输对象,特别适合于Flex和Java...

    flex与服务端通信的as封装源码(同步、异步两种方式)

    这篇资料提供了一套AS(ActionScript)源码,用于实现Flex客户端与服务端的交互,支持同步和异步两种通信方式,且采用HTTPService进行封装,避免了对BlazeDS的依赖。主要知识点包括: 1. **Flex与服务端通信**:...

    flex实现在线翻译

    【标题】:“flex实现在线翻译” 在Web应用开发中,Flex是一种基于Adobe Flash Player或Adobe AIR运行时的富互联网应用程序(RIA)框架。它允许开发者创建具有交互性和动态视觉效果的用户界面。在这个实例中,我们...

    flexDemo实现引擎搜索

    FlexDemo实现引擎搜索是一个以Adobe Flex技术为核心的项目,它展示了如何与Java 2 Enterprise Edition (J2EE)平台集成,创建一个类似于Google的搜索引擎。在这个Demo中,我们可以通过使用Flex前端展示用户界面,同时...

    baidu语音识别 flex 版实现

    接着,在Flex应用中通过HTTP或HTTPS请求将音频数据发送到百度的识别接口,通常以POST方式提交音频文件或其Base64编码。 3. **处理返回结果**:百度的语音识别API会返回一个JSON格式的结果,其中包含了识别出的文本...

    flex学习笔记 flex学习总结 flex学习教程

    这是Flex实现动态界面的重要机制。 5. **ActionScript深入**:除了基本的变量、函数、类之外,ActionScript还包括错误处理、事件处理、类的继承、接口实现等内容。熟练掌握ActionScript能提升编程能力。 6. **Flex...

    flex 端实现分页的两种方法

    本篇文章将深入探讨在Flex端实现分页的两种方法。 第一种方法是基于客户端的分页。这种方法将所有的数据一次性从服务器获取,然后在客户端进行分页处理。在Flex中,可以利用ArrayCollection或XMLListCollection作为...

    基于java+flex实现的聊天程序

    本项目“基于Java+Flex实现的聊天程序”提供了一种有效的解决方案,它结合了Java的强大后端处理能力和Flex的富互联网应用程序(RIA)前端展示技术,实现了高效的聊天功能,包括群聊、私聊以及多房间切换。...

    基于Flex三种通讯方式的Java配置与整合.docx

    在基于Flex的开发中,与Java的通信是关键部分,主要涉及三种主要的通信方式:HttpService、WebService和RemoteObject,这些方式都是为了让Flex客户端能够有效地与Java后端进行数据交换。下面将详细介绍这三种通信...

    Flex做的登录表单

    Flex是由Adobe公司开发的一种用于构建富互联网应用程序(RIA)的框架,主要基于ActionScript 3.0编程语言和Flash Player或Adobe AIR运行时环境。在本文中,我们将深入探讨使用Flex构建登录表单的相关知识点。 1. **...

    swift-使用FLEX调试任意第三方应用

    总的来说,FLEX和FLEXLoader为iOS开发者提供了一种便捷的调试方式,特别是在处理越狱设备上的第三方应用时。理解并熟练掌握这一工具,能够提升开发效率,更好地理解和解决问题,从而提高应用的质量和用户体验。

Global site tag (gtag.js) - Google Analytics