`
wgcode
  • 浏览: 593489 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

用HttpService实现简单as3通讯

阅读更多

as3 code:  HttpService.as

package  
{  
    import flash.display.Sprite;  
    import flash.events.Event;  
    import flash.events.HTTPStatusEvent;  
    import flash.events.IOErrorEvent;  
    import flash.events.MouseEvent;  
    import flash.events.ProgressEvent;  
    import flash.events.SecurityErrorEvent;  
    import flash.net.URLLoader;  
    import flash.net.URLLoaderDataFormat;  
    import flash.net.URLRequest;  
    import flash.net.URLRequestMethod;  
    import flash.net.URLVariables;  
    import flash.net.navigateToURL;  
    import flash.text.TextField;  
    import flash.text.TextFieldType;  
      
    public class HttpService extends Sprite  
    {      
        public function HttpService()  
        {  
            init();  
            reuqestServer();  
        }  
          
        //服务端的http地址字符串  
        private var urlStr:String = "http://127.0.0.1:8080/webSange/TestHttpService.jsp";  
        private var _y:Number = 20;  
          
        private function init():void  
        {  
            //画一个圆 颜色为黑色  
            var sprite:Sprite = new Sprite();  
            sprite.graphics.beginFill(0X000000);  
            sprite.graphics.drawCircle(300,100,20);  
            sprite.graphics.endFill();  
            sprite.addEventListener(MouseEvent.CLICK, clickHandler);  
            sprite.buttonMode = true;  
            this.addChild(sprite);  
        }  
          
        //点击圆点将   go to jsp  发送到TestHttpService.jsp,然后显示出来  
        private function clickHandler(e:Event):void  
        {  
            var name:String = "go to jsp";  
            var url:String = urlStr + "?name="+ name;  
            navigateToURL(new URLRequest(url));  
        }  
          
        //请求服务端  
        private function reuqestServer():void  
        {  
            //创建URLLoader对象  
            var urlLoader:URLLoader = new URLLoader();                  
            //设置接收数据方式(文本、原始二进制数据、URL 编码变量);  
            urlLoader.dataFormat = URLLoaderDataFormat.VARIABLES;  
            //设置传递参数  
            var urlVars:URLVariables = new URLVariables();  
            urlVars.name = "go 去服务端";  
            //建立Request访问对象  
            var urlRequest:URLRequest = new URLRequest(urlStr);  
            //设置参数  
            urlRequest.data = urlVars;  
            //设置访问模式(POST,GET)  
            urlRequest.method = URLRequestMethod.POST;  
              
            try  
            {  
                urlLoader.load(urlRequest);  
            }  
            catch(error:Error)  
            {  
                trace(error)  
            }  
              
            //加载完成  
            urlLoader.addEventListener(Event.COMPLETE, urlLoaderCompleteHandler);  
            //开始访问  
            urlLoader.addEventListener(Event.OPEN, urlLoaderOpenHandler);  
            //加载进度  
            urlLoader.addEventListener(ProgressEvent.PROGRESS, urlLoaderProgressHandler);  
            //跨域访问安全策略  
            urlLoader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, urlLoaderSecurityErrorHandler);  
            //Http状态事件  
            urlLoader.addEventListener(HTTPStatusEvent.HTTP_STATUS, urlLoaderHttpStatusHandler);      
            //访问出错事件  
            urlLoader.addEventListener(IOErrorEvent.IO_ERROR, urlLoaderIoErrorHandler);          
        }  
          
          
        private function urlLoaderCompleteHandler(e:Event):void  
        {              
            var txt:TextField = new TextField();  
            txt.wordWrap = true;  
            txt.width = 300;  
            txt.type = TextFieldType.DYNAMIC;  
            txt.text = "数据请求完成,返回数据为:" + e.target.data.success;  
            txt.y = 40;  
            txt.multiline = true;  
            this.addChild(txt);  
        }  
          
        private function urlLoaderOpenHandler(e:Event):void  
        {  
            var txt:TextField = new TextField();              
            txt.text = "连接已经打开";  
            txt.multiline = true;  
            txt.y = 20;  
            this.addChild(txt);  
        }  
          
        private function urlLoaderProgressHandler(e:ProgressEvent):void  
        {  
            var num:uint = (e.bytesLoaded / e.bytesTotal) * 100;  
            var txt:TextField = new TextField();  
            txt.text = num + "%";  
            txt.y = 0;  
            this.addChild(txt);              
        }  
          
        private function urlLoaderSecurityErrorHandler(e:SecurityErrorEvent):void  
        {  
            trace(e);  
        }  
          
        private function urlLoaderHttpStatusHandler(e:HTTPStatusEvent):void  
        {  
            trace(e);  
        }  
          
        private function urlLoaderIoErrorHandler(e:IOErrorEvent):void  
        {  
            trace(e);  
        }  
    }  
}  

 java code: TestHttpService.jsp

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>  
<%  
String path = request.getContextPath();  
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";  
%>  
<%  
    request.setCharacterEncoding("utf-8");  
    String username=request.getParameter("name");  
    username += " 去客户端";  
    out.clear();  
     out.print("success="+ username );  
     System.out.print(username);  
%>  
 
分享到:
评论

相关推荐

    Flex+HTTPService 例子

    因此,我们将逐步讲解创建一个简单的Flex应用,使用HTTPService与Java后台进行数据交互的过程: 1. **创建Flex项目**:首先,你需要安装Adobe Flex Builder或使用其他支持Flex开发的IDE,如IntelliJ IDEA或Flash ...

    flex4.5httpservice实现搜狐焦点图新闻和特效按钮皮肤制作

    在“实现搜狐焦点图新闻”这一部分,开发者可能使用 HTTPService 来从搜狐的 API 获取最新的焦点图新闻数据。这通常包括请求新闻列表,然后将返回的数据绑定到 Flex 应用程序的组件上,如 DataGrid 或者 List,以...

    flex4 httpservice 例子

    在提供的压缩包文件中,可能包含了一个名为`demo`的示例项目,该项目展示了如何在实际应用中使用上述步骤来实现Flex4的`HTTPService`来提取XML数据。通过查看和运行这个示例,你将更深入地理解如何在Flex4中使用`...

    as3读取json实例

    在本文中,我们将深入探讨AS3(ActionScript 3.0)如何读取JSON数据,这是一个在Web开发中广泛使用的轻量级数据交换格式。AS3是Adobe Flash Player和Adobe AIR应用程序的基础,它提供了一种强大的方式来处理JSON数据...

    flex httpservice 和 java通信 获取 java端的返回值

    在Flex项目中,使用HTTPService组件需要在MXML或AS3代码中声明并配置。设置URL指向Java Web服务的地址,方法通常为GET或POST。例如: ```xml &lt;mx:HTTPService id="javaService" url=...

    as3殿堂之路 源码 全集

    5. **动画制作**:AS3可以通过时间轴控制或者使用 ENTER_FRAME 事件来实现动画效果。源码可能包含基于时间的动画、帧动画、补间动画的实现。 6. **网络通信**:AS3支持XMLSocket、URLLoader、HTTPService等类进行...

    flex HttpService 入门例子

    简单的 flex HttpService例子,可供初学者参考

    HttpService

    httpservice post get传数据

    ASP.NET HttpService

    .net 下用asp.net实现的HttpService例子; HttpService的部署方式跟网站的部署方式一样; 运行HttpClient前注意先配置下配置文件,Url为HttpService的地址

    java 中使用Flex的HttpService的详细配置

    3. **在Flex客户端使用HttpService** - 引入`mx.rpc.http.HTTPService`组件到Flex项目中。 - 创建HttpService实例,设置其`URL`属性指向Java服务的URL。 - 配置`method`属性为POST,因为AMF通常使用POST方法传输...

    Flex3 HTTPService 获得json数据

    本篇文章将深入探讨如何使用Flex3的HTTPService来获取JSON数据。 首先,JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也方便机器解析和生成。在Flex3中,我们经常用它来...

    Flex4.0 如何通过 HttpService和WebService与服务器进行通信

    在Flex 4.0开发中,与服务器进行通信是实现应用程序功能的重要环节。HttpService和WebService是两种常用的方式,它们允许Flex客户端与基于HTTP或Web服务接口的后端系统进行数据交换。本篇文章将深入探讨如何利用Flex...

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

    首先,Flex中的`HttpService`是ActionScript 3(AS3)的一个类,它允许Flex应用通过HTTP或HTTPS协议与服务器进行通信。使用`HttpService`,开发者可以方便地发送GET或POST请求,包括发送键值对数据。例如,你可以...

    flex与java通讯,URL,HTTPService,Socket

    使用URLLoader,开发者可以实现简单的GET或POST请求,适合于数据量较小的请求。例如,获取JSON或XML格式的数据。 二、HTTPService HTTPService是Flex提供的一种更高级的网络通信机制,它基于HTTP协议,支持SOAP和...

    将HttpService结果返回给控件

    在Java中,我们可以使用多种库来实现这一功能,如Apache HttpClient、OkHttp或是Spring的RestTemplate。在Android开发中,最常用的可能是使用Volley、Retrofit或AsyncTask来处理网络请求。这些库能够帮助开发者简化...

    HttpService(C#获取网站源码)

    2、链接库里的HttpService类即为用于获取源码的相关操作的类,获取时相关的函数还考虑到了自动跳转(Head头的Location)、简单的Head里面的或是里的的跳转,链接库都可以实现跳转到最终所需的页面来获取源码 ...

    最经常遇到的AS3面试题

    Flex可以使用HTTPService、WebService或RemoteObject与后台语言交互,例如使用HTTPService从服务器获取数据,使用WebService调用远程方法,使用RemoteObject与服务器进行实时通信。 10. AS3事件机制 AS3事件机制...

    DataGrid控件使用及HTTPService参数传递说明

    本教程将深入讲解如何有效利用DataGrid控件,并结合HTTPService进行参数传递,以实现与服务器的数据交互。通过源代码分析,我们可以更直观地理解这些概念。 首先,DataGrid控件的使用主要包括以下几个步骤: 1. **...

    [资源]as3corelib库及帮助文档

    7. **网络请求**:虽然AS3有URLLoader类,但as3corelib提供了HTTPService类,使得网络请求更加方便,支持GET和POST方法,以及处理响应数据。 8. **其他工具**:还有一些通用的工具类,如TypeUtil,提供类型检查和...

    Flex4_httpService

    综上所述,Flex4_httpService项目涵盖了Flex 4与Java Web服务交互的核心技术,包括客户端HTTPService的使用、服务端Java接口的实现以及项目配置和调试等环节。通过深入学习和实践,开发者可以熟练掌握Flex 4与后端...

Global site tag (gtag.js) - Google Analytics