`

http service 得到post请求对象

 
阅读更多

得到post object的方式

一。序列化数据

 

public String testPost2() throws IOException{
		System.out.println("得到POST传递过来的对象——doPost");
		InputStream in = ServletActionContext.getRequest().getInputStream();
		ObjectInputStream ois = new ObjectInputStream(in);
		try{
			LoginObj lo = (LoginObj)(ois.readObject());
			System.out.println(lo.ip);
			System.out.println(lo.port);
			System.out.println(lo.uin);
			TwoDimensionalCodeValidate tdcv = new TimeStampUUIDValidate();
			System.out.println("validate:"+tdcv.validate(lo.two_dim_code));
			if(tdcv.validate(lo.two_dim_code)){
				System.out.println("--");
				CacheOperation co = new MemCachedOperation();
				co.saveData(lo);
			}
		}catch(Exception e){
			e.printStackTrace();
		}
		return null;
	}
 

二。非序列化数据

 

                public String testPost() throws IOException{
		System.out.println("----得到POST传递过来的对象——doPost start----");
		InputStream in = ServletActionContext.getRequest().getInputStream();
		byte[] bytes = new byte[1024*4];
		int read = in.read(bytes);
		System.out.println("read:"+read);
		JSONObject returnjson = new JSONObject();
		
		
		LoginObj obj = new LoginObj();
		
		if( read > 0 )
		{
			String str = new String(bytes,0,read);
			System.out.println(str );
			
			try {
				JSONObject json = new JSONObject(str);		
				
				obj.getValue(json);
				TwoDimensionalCodeValidate tdcv = new TimeStampUUIDValidate();
				System.out.println("validate:"+tdcv.validate(obj.two_dim_code));
				if(tdcv.validate(obj.two_dim_code)){
					CacheOperation co = new MemCachedOperation();
					co.saveData(obj);
					returnjson.put("ret", 1);
				}else{
					returnjson.put("ret", 2);
				}
			} catch (JSONException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
			
			PrintWriter out;
			ServletOutputStream  ps ;
			ps = ServletActionContext.getResponse().getOutputStream();
			//ps.print(returnjson.toString().getBytes("UTF-8")); 
			byte[] out_bytes = returnjson.toString().getBytes("UTF-8");
			ps.write(out_bytes, 0, out_bytes.length);
			ps.flush();
			ps.close();
			return null;
			
		}else{
			try {
				returnjson.put("ret", 0);
			} catch (JSONException e) {
				e.printStackTrace();
			}
			PrintWriter out;
			out = ServletActionContext.getResponse().getWriter();
			out.print(returnjson);  
			
			return null;
		}
		
	}
分享到:
评论

相关推荐

    C#POST请求WCF服务

    对于POST请求,通常与RESTful风格的WCF服务关联,因为这是HTTP协议中用于提交数据的主要方法。 要实现C#中的POST请求,你需要创建一个客户端代理类来代表WCF服务。这可以通过使用`svcutil.exe`工具或者在Visual ...

    c++ boost asio http get post请求

    在这个例子中,我们首先创建了一个`streambuf`对象,然后写入POST请求的所有部分,包括请求行、头部和正文。最后,我们使用`write`函数将请求数据发送到服务器,并读取响应。 需要注意的是,以上示例代码没有处理...

    【Delphi】http post请求 webservices接口

    在Delphi编程环境中,开发人员经常需要与Web服务进行交互,这通常涉及到HTTP POST请求和SOAP(简单对象访问协议)协议。本篇文章将深入探讨如何在Delphi中使用HTTP POST方法来调用基于Web Services的SOAP接口。 ...

    C#Post带参数请求+WebService接口.zip

    本压缩包“C#Post带参数请求+WebService接口.zip”提供了关于如何使用C#进行POST请求并调用WebService接口的相关代码示例。下面我们将深入探讨这两个核心知识点。 1. **C# 带参数POST请求**: 当需要向服务器发送...

    Retrofit网络请求GET请求POST请求

    本教程将深入探讨Retrofit在处理GET和POST请求时的关键知识点。 首先,我们需要理解Retrofit的核心概念:接口(Interface)。在Java编程中,接口定义了方法的签名,而在Retrofit中,这些接口则代表了HTTP请求。例如...

    android HttpPost请求连接服务器端的实例

    本实例将详细介绍如何在Android环境中使用HttpPost请求连接服务器,并处理相关的异常情况,如网络连接状态判断和请求超时。 首先,我们需要在Android应用中引入必要的库,通常我们会使用Apache HttpClient库来实现...

    C#使用Http Post方式传递Json数据字符串调用Web Service

    C#中通过直接添加引用的方来调用Web Service的方式不够灵活,故采取手动发送Http请求的方式来调用Web Service。最后选择使用Post方式来调用Web Service

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

    2. 配置HTTP Service:设置HTTP Service的请求方法(GET或POST),以及请求参数,这些参数可能包含在JSON数据中。 3. 编写Java后端:在服务器端,你需要创建一个Struts2 Action,该Action处理Flex的HTTP请求。...

    C#发送HttpPost请求来调用WebService的方法

    在C#编程中,发送HttpPost请求来调用WebService是一种常见的数据交互方式,特别是在需要与远程服务进行异步通信或者处理复杂数据时。本篇将详细解释如何使用C#实现这一功能,以调用名为"MyAction"的方法为例。 首先...

    C#使用HttpPost请求调用WebService的方法

    C# 使用 HttpPost 请求调用 WebService 的方法 C# 使用 HttpPost 请求调用 WebService 的方法是一种常用的技术,能够帮助开发者快速实现 WebService 的调用。下面将详细介绍 C# 使用 HttpPost 请求调用 WebService ...

    快捷使用Retrofit网络请求框架(get请求,post请求,上传文件)

    // POST请求,使用@Body注解传入JSON对象 } ``` ### 4. 初始化Retrofit实例 创建Retrofit实例,指定基础URL和使用Gson转换器: ```java Retrofit retrofit = new Retrofit.Builder() .baseUrl(...

    SpringBoot构建Restful service完成Get和Post请求

    "SpringBoot构建Restful service完成Get和Post请求" SpringBoot是一款基于Java的开源框架,主要用于构建RESTful风格的Web服务。其中,Get和Post请求是最基本也是最常用的两种请求方式。本文将主要介绍如何使用...

    Labview创建webservice与C#进行简单的http通信(post,get)

    - 对于POST请求,使用PostAsync方法,除了URL外,还需要提供一个HttpContent对象,包含要发送的数据。 - 解析返回的HTTP响应,提取所需数据。 3. **HTTP通信细节**: - GET请求通常用于获取资源,URL中包含所有...

    java通过HttpServletRequest获取post请求中的body内容的方法

    java通过HttpServletRequest获取post请求中的body内容的方法 java web应用中,获取post请求body中的内容是一个常见的需求。通常,我们可以使用request对象的getParameter()方法来获取url参数或ajax提交的参数。但是...

    安卓 Retrofit Post(请求) 高质量代码 拉起来就能用(绝不坑金币)

    在这个例子中,`@POST("api/user")` 注解定义了一个POST请求,URL是 "api/user",`Call<User>` 表示请求的返回类型,`@Body User user` 表示将User对象作为请求体发送。 2. **转换器(Converter)**:Retrofit需要...

    API 内部请求其他的service

    它提供了丰富的功能,如设置请求头、指定HTTP方法(GET、POST等)、处理响应等。以下是一个简单的示例: ```csharp using System.Net; using System.IO; HttpWebRequest request = (HttpWebRequest)WebRequest....

    调用webservice,通过post传参读取返回的XML

    2. **POST方法**:在HTTP请求中,POST方法用于向服务器发送数据,常用于提交表单或发送数据到服务器进行处理。在这个场景中,POST方法用于传递调用WebService所需的参数。 3. **XML**:XML是一种自描述性的文本标记...

    安卓http post json

    在安卓开发中,进行HTTP POST请求并发送JSON数据是一项常见且重要的任务,尤其是在与服务器进行交互、提交数据或获取响应时。以下是从给定的文件信息中提炼出的关键知识点: ### 安卓HTTP POST JSON方法详解 #### ...

    通过网络请求框架

    - 创建一个`ApiService`接口,定义GET或POST方法,如`@GET("users/{id}") Observable<User> getUser(@Path("id") int id);` - 创建Retrofit实例,`Retrofit retrofit = new Retrofit.Builder().baseUrl(...

Global site tag (gtag.js) - Google Analytics