`

flex httpService如何给后台传值

阅读更多

最近看一些文档,总结了一些<mx:HTTPService>给后台传递参数的方法,列举如下:

方法1:采用URLVariables对象



<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
     layout="absolute" fontSize="12"
    >
    <mx:Script>
        <![CDATA[
            import mx.controls.Alert;
            import mx.rpc.events.ResultEvent;
            //对提交给后台的参数进行UTF-8的编码处理
            private function httpEncoding(param:String):String{
                return encodeURIComponent(param);
            }
            private function httpEncoding0(param:String):String{
                return param;//encodeURI(param);
            }
            private function doRequest():void{
                btn_do.enabled=false;
                var url:String = "http://localhost:8600/grid.jsp";
                //以下那样写后台会乱码,不管是否做URI编码转换
                //url += "?user="+httpEncoding0("用户名");
                //url += "&psw="+httpEncoding0("密码");
                //trace(url);
                srv.url = url;
                //srv.send();
                //以下这样写正常
                var params:URLVariables = new URLVariables();
                //这个user,psw就是传入后台的参数user,jsp就用 request.getParameter("user")来取
                params.user = httpEncoding("用户名");
                params.psw = httpEncoding("密码");
                srv.send(params);           
            }
            private function resultHandler(event:ResultEvent):void{
                Alert.show("与后台交互结束,前台开始取得的数据...","提示信息");
                btn_do.enabled=true;
            }
        ]]>
    </mx:Script>
    <mx:HTTPService id="srv" result="resultHandler(event);"/>
    <mx:Panel title="测试与jsp后台交互" layout="absolute" width="100%" height="90%">
        <mx:Button id="btn_do" label="取得数据" click="doRequest();"/>
        <mx:Spacer height="1"/>
        <mx:DataGrid dataProvider="{srv.lastResult.catalog.product}" width="100%" height="100%" y="28"/>    
    </mx:Panel>
</mx:Application>
方法2:采用<mx:request/>,同时也演示了mx:State的用法,[来自网上]



<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
    <mx:states>
        <mx:State name="Logged In">
            <mx:SetProperty target="{panel1}" name="width" value="95%"/>
            <mx:SetProperty target="{panel1}" name="height" value="95%"/>
            <mx:RemoveChild target="{password}"/>
            <mx:RemoveChild target="{username}"/>
            <mx:RemoveChild target="{label1}"/>
            <mx:RemoveChild target="{Submit}"/>
            <mx:RemoveChild target="{label2}"/>
            <mx:SetProperty target="{panel1}" name="title" value="Members Section"/>
            <mx:AddChild relativeTo="{panel1}" position="lastChild">
                <mx:Label x="10" y="10" text="Welcome to the Members Section!"/>
            </mx:AddChild>
            <mx:AddChild relativeTo="{panel1}" position="lastChild">
                <mx:Label x="10" y="36" text="Here you can do great things, like join the forums @ Viper Creations!"/>
            </mx:AddChild>
            <mx:AddChild relativeTo="{panel1}" position="lastChild">
                <mx:Label x="10" y="62" text="Label"/>
            </mx:AddChild>
        </mx:State>
    </mx:states>
    <mx:Script>
        <![CDATA[
            import mx.rpc.events.ResultEvent;
           
        ]]>
    </mx:Script>
    <mx:Script>
   

<![CDATA[

private function checkLogin(evt:ResultEvent):void
{

    if(evt.result.loginsuccess == "yes")

    {

    currentState = "Logged In";

    }

    if(evt.result.loginsuccess == "no")

    {
       
        mx.controls.Alert.show(''Invalid username/password'');

    }       
}

]]>

</mx:Script>
    <mx:HTTPService id="login_user" result="checkLogin(event)" showBusyCursor="true" method="POST" url="http://www.vipercreations.com/site_admin/login.php" useProxy="false">
        <mx:request xmlns="">
            <username>
                {username.text}
            </username>
            <password>
                {password.text}
            </password>
        </mx:request>
    </mx:HTTPService>
   
    <mx:Panel resizeEffect="Resize" width="250" height="200" layout="absolute" title="Login System" horizontalCenter="0" verticalCenter="-2" id="panel1">
        <mx:Label x="10" y="10" text="Username:" id="label1"/>
        <mx:TextInput x="10" y="36" id="username"/>
        <mx:Label x="10" y="66" text="Password:" id="label2"/>
        <mx:TextInput x="10" y="92" id="password" displayAsPassword="true"/>
        <mx:Button x="10" y="122" label="Submit" id="Submit" click="login_user.send();"/>
    </mx:Panel>
</mx:Application>

分享到:
评论

相关推荐

    flex HttpService 入门例子

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

    Flex HTTPService如何给后台传递参数 .doc

    Flex中的HTTPService组件提供了灵活的方式与后台进行数据交互。通过URLVariables对象或`&lt;mx:request/&gt;`标签,我们可以方便地传递参数给服务器。理解这两种方法对于开发Flex应用程序并与服务器进行数据交换至关重要。...

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

    在Java开发中,Flex HttpService是一个强大的工具,用于在Adobe Flex客户端与服务器之间进行数据通信。这个服务允许Flex应用程序通过HTTP协议发送请求到后端服务器,并接收响应数据。本篇文章将深入探讨如何在Java...

    flex4 httpservice 例子

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

    Flex+HTTPService 例子

    在这个“Flex+HTTPService 例子”中,我们将探讨如何使用Flex与Java后台通过HTTPService进行数据交互。 首先,我们需要了解Flex中的HTTPService组件。HTTPService允许开发者发送HTTP请求到服务器,并接收响应数据。...

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

    本文将详细介绍如何使用Flex的HTTPService组件与Java服务进行交互,并获取Java端的返回值。首先,让我们了解一下Flex和Java通信的基本原理。 Flex是一款基于ActionScript 3的开源框架,用于创建富互联网应用程序...

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

    本篇文章将深入探讨如何利用Flex 4.0中的HttpService和WebService组件与Java Struts2框架构建的服务器进行通信。 首先,我们来看HttpService。HttpService是ActionScript 3.0中的一个类,用于发起HTTP请求,通常...

    Flex HTTPService with ASP.NET.zip

    帶有ASP.NET的Flex HTTPService 本教程旨在演示在帶有ASP.NET的Flex 2+中HTTPService功能的使用。 Adobe Flex中有許多方法可以與ASP.NET(或簡單地說,服務器端語言)進行通信。 HttpService,WebService,WebORB...

    flex httpservice实例

    在深入探讨“Flex HTTPService实例”这一主题时,我们首先需要理解Flex框架的基本概念以及HTTPService组件在其中扮演的角色。Flex是一种用于构建跨平台的、高性能的桌面和移动应用程序的软件开发工具包(SDK),由...

    flex通过httpService读取xml数据到datagird中

    flex通过httpService读取xml数据到datagird中,通过读取远程URL的XML数据(这里保存到本地),保存到ArrayCollection中,然后在将ArrayCollection绑定到datagird上 环境:flex3.0 可直接运行

    flex 文档以及后台数据交互详解

    1. **HTTPService**:这是Flex中最常用的后台数据交互方式,通过发送XML、JSON或其他格式的数据来与服务器进行HTTP请求和响应。 2. **WebService**:Flex支持与SOAP Web服务集成,允许调用远程方法并传递复杂的数据...

    flex与httpService通信(java)

    在Flex中,`HTTPService`组件是用于与服务器进行数据交换的重要工具,特别是对于与Java后台进行通信时。本篇文章将深入探讨Flex与Java后台通过`HTTPService`通信的原理、配置和实践。 1. **HTTPService组件介绍** ...

    FLEX _HTTPService的调用方法

    根据提供的文件信息,我们可以深入探讨FLEX中的_HTTPService组件及其使用方法。此组件主要用于与Web服务进行通信,例如从服务器获取或发送数据。下面将详细解释如何使用_HTTPService组件,并通过示例代码来展示其...

    Flex+SpringMVC HttpService 发送XML数据

    1. Flex发送:在Flex客户端,当用户触发某个操作时,HttpService发送XML数据到服务器,数据内容由Flex的XML对象构建。 2. 春天处理:SpringMVC接收到请求后,通过XMLMessageConverter解析XML数据,然后将数据传递给...

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

    处理完数据后,Servlet通过`response.getWriter().write(result)`将结果写回给Flex客户端。 为了使这个通信工作,你需要在服务器上部署Servlet,并在Flex应用中正确配置`HttpService`的URL。在提供的压缩包文件中,...

    Flex4_httpService

    这个项目展示了如何通过HTTPService组件在Flex应用中实现远程调用Java服务,以完成数据的交换和处理。Flex 4是Adobe AIR和Flash Player支持的ActionScript 3.0开发框架,它提供了一个强大的UI组件库和数据绑定机制,...

    Flex与后台交互的方法_HTTPService_WebService_URLLoader

    本篇文章将详细探讨Flex与后台交互的三种主要方法:HTTPService、WebService和URLLoader。 1. HTTPService: HTTPService是Flex中用于处理HTTP请求的组件,基于标准的HTTP协议进行通信。通过HTTPService,开发者...

    flex 解析xml文件 httpservice

    本篇文章将深入探讨如何使用Flex解析XML文件,并通过HTTPService来读取XML内容,以及如何根据需求过滤字符串并获取所需值。 首先,让我们了解Flex中的XML类。XML类是ActionScript 3.0中用于处理XML文档的主要工具,...

    Flex 连接后台Java的几种方法选择

    Flex 连接后台 Java 的几种方法选择 Flex 是一种基于 Adobe Flash 平台的 Rich Internet Application(RIA)开发技术,Java 是一种流行的服务器端编程语言。连接 Flex 和 Java 后台是构建 RIA 应用程序的关键步骤。...

Global site tag (gtag.js) - Google Analytics