flex4中httpservice与服务器端交互的值传递
2012-02-24 00:18
302 查看
flex中的代码:
后台接受参数的代码:
方式二:第二种传值方式通过send()方法传值send方法中传递参数 ,服务端接受数据采用request.getParmeter("参数名")获取数据.
示例代码:
贴出完整的代码:
服务器端:
flex代码:
<!--定义HttpService发送请求--> <s:HTTPService id="service" url="http://localhost:8080/testhttpservice/testHttpServiceServlet" useProxy="false" fault="service_faultHandler(event)" result="service_resultHandler(event)"> <!--第一种传值方式--> <s:request > <!--参数名称作标签,中间填充参数值--> <username>{txtusername.text}</username> <password>{txtpassword.text}</password> </s:request> </s:HTTPService>
后台接受参数的代码:
//获取flex传递的参数 username password String username=request.getParameter("username"); //get方式处理乱码 //username=new String(username.getBytes("ISO-8859-1"),"utf-8"); String password=request.getParameter("password"); //password=new String(password.getBytes("ISO-8859-1"),"utf-8");
方式二:第二种传值方式通过send()方法传值send方法中传递参数 ,服务端接受数据采用request.getParmeter("参数名")获取数据.
示例代码:
//第二种传值方式 通过send()方法传值 send方法中传递参数 //定义一object对象 var val:Object=new Object(); //分别将文本框username,password的值传递到后台 //object对象.参数名=值 传值操作 val.username=txtusername.text; val.password=txtpassword.text; service.send(val);
贴出完整的代码:
服务器端:
package com.servlet; import java.io.IOException; import java.io.PrintWriter; import java.util.ArrayList; import java.util.List; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** * 功能描述:flex httpservice与java交互参数传递探讨<br> * @author sxyx2008<br> * @date 2010-07-19 * */ @SuppressWarnings("serial") public class TestHttpServiceServlet extends HttpServlet { @Override protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //处理post方式乱码 request.setCharacterEncoding("utf-8"); //设置浏览器输出字符编码 response.setCharacterEncoding("utf-8"); PrintWriter writer=response.getWriter(); //获取flex传递的参数 username password String username=request.getParameter("username"); //get方式处理乱码 //username=new String(username.getBytes("ISO-8859-1"),"utf-8"); String password=request.getParameter("password"); //password=new String(password.getBytes("ISO-8859-1"),"utf-8"); //构建一个list存放一些数据用来模拟用户是否存在这一功能 List<String> list=new ArrayList<String>(); list.add("张三"); list.add("李四"); list.add("王五"); list.add("曹操"); list.add("孙权"); list.add("刘备"); //检验用户 if(list.contains(username)){ writer.print("存在:"+username+"客户端传递的密码是:"+password); }else{ writer.print("找不到:"+username+"客户端传递的密码是:"+password); } } }
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">
<fx:Script>
<![CDATA[
import mx.controls.Alert;
import mx.rpc.events.FaultEvent;
import mx.rpc.events.ResultEvent;
//调用失败
protected function service_faultHandler(event:FaultEvent):void
{
Alert.show("失败了:"+event.message,"提示");
}
//调用成功
protected function service_resultHandler(event:ResultEvent):void
{
Alert.show("成功了:"+event.result as String,"提示");
}
//调用
protected function button1_clickHandler(event:MouseEvent):void
{
//第一种传值方式
//service.send();
//第二种传值方式 通过send()方法传值 send方法中传递参数
//定义一object对象
var val:Object=new Object();
//分别将文本框username,password的值传递到后台
//object对象.参数名=值 传值操作
val.username=txtusername.text;
val.password=txtpassword.text;
service.send(val);
}
]]>
</fx:Script>
<fx:Declarations>
<!-- 将非可视元素(例如服务、值对象)放在此处 -->
<!--定义HttpService发送请求--> <s:HTTPService id="service" url="http://localhost:8080/testhttpservice/testHttpServiceServlet" useProxy="false" fault="service_faultHandler(event)" result="service_resultHandler(event)"> <!--第一种传值方式--> <s:request > <!--参数名称作标签,中间填充参数值--> <username>{txtusername.text}</username> <password>{txtpassword.text}</password> </s:request> </s:HTTPService>
</fx:Declarations>
<s:TextInput x="332" y="196" id="txtusername"/>
<s:TextInput x="332" y="256" id="txtpassword" displayAsPassword="true"/>
<s:Button x="357" y="311" label="发送" click="button1_clickHandler(event)"/>
<s:Label x="290" y="206" text="用户名:"/>
<s:Label x="297" y="266" text="密码:"/>
</s:Application>
相关文章推荐
- flex4中httpservice与服务器端交互的值传递
- flex4中httpservice与服务器端交互的值传递
- Flex4中使用HTTPService与后台交互绑定到DataGrid控件
- Android与服务器端数据交互(http协议整合struts2+android)
- Flex中使用HTTPService与服务器端交换数据
- Android与服务器端数据交互(基于SOAP协议整合android+webservice)
- flex中httpservice与java后台交互的两种传值方式
- 通俗易懂客户端与服务器端交互原理(HTTP数据请求与HTTP响应,包括Servlet部分)
- Android与服务器端数据交互(http协议整合struts2+android)
- Android与服务器端数据交互(基于SOAP协议整合android+webservice)
- android端和Struts2服务器端通信,交互信息,参数采用JSON,使用了HttpClient与HttpPost类
- Android与服务器端数据交互(基于SOAP协议整合android+webservice)
- 在Flex中使用HTTPService传递参数
- Android与服务器端数据交互(基于SOAP协议整合android+webservice)
- 通俗易懂客户端与服务器端交互原理(HTTP数据请求与HTTP响应,包括Servlet部分)
- Flex HttpService 方式与java交互(json数据类型)
- Android与服务器端数据交互(基于SOAP协议整合android+webservice)
- Flex数据交互方法 :httpservice, webservice, RemoteObject, socket
- Flex中使用HTTPService与服务器端交换数据
- 通俗易懂客户端与服务器端交互原理(HTTP数据请求与HTTP响应,包括Servlet部分)