`
shibin_1109
  • 浏览: 79401 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

javahttp请求

    博客分类:
  • java
阅读更多
package com.expai.utils;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.UnsupportedEncodingException;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.ProtocolException;
import java.net.URL;
import java.util.Map;
import java.util.Map.Entry;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

/**
 * Description:后台服务要调用其他架构服务post请求服务类
 */
public class HttpPostUtils {
	
	private static Logger logger = LoggerFactory.getLogger(HttpPostUtils.class);
	
	/**
	 * 发送请求
	 * @param url
	 * @param params
	 * @return
	 */
	public static String sendPost(String url,Map<String,String> params){
		
		logger.debug("sendPost======================开始===========");
		URL u = null;
		HttpURLConnection con = null;
		//构建请求参数
		StringBuffer sb = new StringBuffer();
		if(params != null){
			for(Entry<String,String>e:params.entrySet()){
				sb.append(e.getKey());
				sb.append("=");
				sb.append(e.getValue());
				sb.append("&");
			}
			sb.substring(0, sb.length()-1);
		}
		logger.debug("send_url:"+url);
		logger.debug("send_data:"+sb.toString());
		//发送请求
		try {
			u = new URL(url);
			con = (HttpURLConnection)u.openConnection();
			con.setRequestMethod("GET");
			con.setDoInput(true);
			con.setDoOutput(true);
			con.setUseCaches(false);
			con.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
			OutputStreamWriter osw = new OutputStreamWriter(con.getOutputStream(), "UTF-8");
			osw.write(sb.toString());
			osw.flush();
			osw.close();
		} catch (MalformedURLException e) {
			e.printStackTrace();
		} catch (ProtocolException e) {
			e.printStackTrace();
		} catch (UnsupportedEncodingException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}finally{
			if(con!=null){
				con.disconnect();
			}
		}
		
		//读取返回的参数
		StringBuffer buffer = new StringBuffer();
		try {
			BufferedReader br = new BufferedReader(new InputStreamReader(
					con.getInputStream(), "UTF-8"));
			String temp;
			while ((temp = br.readLine()) != null) {
				buffer.append(temp);
				buffer.append("\n");
			}
		} catch (UnsupportedEncodingException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
		
		return buffer.toString();
		
	}
	
}

分享到:
评论

相关推荐

    Java Http请求传json数据乱码问题的解决

    在Java进行HTTP请求时,通常会遇到数据传输出现乱码的问题,尤其是在使用JSON格式传输数据,且数据中包含中文字符时更为常见。在HTTP协议中,字符编码的正确处理对于数据的正确传输至关重要。以下将详细介绍在Java中...

    Java Http请求案例

    本文将深入探讨“Java Http请求案例”这一主题,主要关注HTTP协议、TCP协议以及它们在网络通信中的作用。 首先,让我们来理解HTTP(超文本传输协议)。HTTP是一种应用层协议,用于在Web上交换数据。它基于请求-响应...

    JAVA http请求工具类

    以下是对这个"JAVA http请求工具类"相关知识点的详细解释: 1. **基础概念**: - **HTTP协议**:HTTP是互联网上应用最为广泛的一种网络协议,用于从Web服务器传输超文本到本地浏览器。 - **Java HttpClient API**...

    JAVA实现HTTP请求

    这个是我自己集成框架的时候写的一个HTTP请求的辅助类,主要是通过HttpURLConnection 来实现JAVA的HTTP请求,有的人会问、为什么有些网站发请求没问题,有些网站发请求却返回数据,在给网站发送请求的时候,请看清楚...

    java-http请求jar包

    Java发送HTTP请求是进行网络通信的基本操作之一,广泛应用于数据获取、API调用等场景。在Java中,Apache HttpClient库是一个强大的工具,它允许开发者高效、灵活地处理HTTP请求。这个"java-http请求jar包"实际上就是...

    JAVA HTTP请求示例

    在Java编程中,HTTP请求是网络编程中的基本操作,用于与服务器进行通信,获取或发送数据。本示例将深入探讨如何使用Java实现HTTP请求,主要关注两个关键类:`HttpClient`和`Sms`。 首先,我们来看`HttpClient`。`...

    java http请求

    java http请求

    Java发送Http请求,解析html返回

    Java发送Http请求,解析html返回

    java http请求工具类

    java http请求工具类,包含http get post,xml,json,获取ip地址,以及soup请求

    JAVA发送HTTP请求,返回HTTP响应内容

    【JAVA发送HTTP请求,返回HTTP响应内容】 在Java编程中,发送HTTP请求并接收响应是常见的网络通信操作,尤其在Web服务的开发和测试中。本文将详细介绍如何使用Java发送HTTP请求并处理响应内容。 首先,我们需要...

    java后台请求http并保持Session

    在Java编程中,后台请求HTTP并保持Session是一个常见的任务,特别是在需要访问受保护的Web资源时,例如登录后的网页数据。下面将详细讲解这个过程,包括GET和POST方法的使用,以及Session管理。 首先,我们需要了解...

    JAVA 发送http请求工具类

    在Java中,我们可以使用`java.net.HttpURLConnection`或`org.apache.http.client.HttpClient`(Apache HttpClient库)来发送HTTP请求。这两个方法各有优劣:`HttpURLConnection`是Java内置的API,更轻量级,但功能...

    Java Http请求实现类

    在这个场景中,我们有两个核心类:HttpRequester.java和HttpRespons.java,它们是实现HTTP请求自定义的类。 HttpRequester类通常会包含以下功能: 1. **初始化请求**:类中可能包含一个构造函数,接受URL作为参数...

    javaHttp异步请求

    Java中的HTTP异步请求是一种高效的网络通信方式,它允许程序在发送HTTP请求后不等待响应,而是立即继续执行其他任务,当服务器响应时,通过回调函数处理结果。这种方式避免了同步请求时线程阻塞的问题,提高了应用的...

    Java编程:发送HTTP请求,返回响应内容

    在Java编程中,发送HTTP请求并处理响应是网络编程中的基本操作。这通常涉及到与Web服务器的交互,例如获取网页内容、提交表单数据或执行API调用。在这个场景中,我们将探讨如何使用Java实现这一功能,以及如何处理...

    Java Https请求,跳过证书,直接访问

    "TestHttp"可能是一个测试HTTP请求的Java类或文件,你可以使用它来测试上述代码片段是否有效。 总之,理解HTTPS的工作原理以及如何在Java中安全地或不安全地实现HTTPS请求是非常关键的。在开发过程中,合理使用这些...

    调用http请求(包括head头部的请求)

    java后台请求http从而获取数据,这里支持头部参数,比如可以在头部加入orgCode、username、password等必填数据。可以达到postman请求效果

    java http post和get请求回调

    在Java中实现HTTP请求,我们通常会使用`HttpURLConnection`类或者第三方库如Apache HttpClient、OkHttp。这些库提供了方便的方法来执行GET和POST请求,并处理响应。 以`HttpURLConnection`为例,POST请求的实现如下...

Global site tag (gtag.js) - Google Analytics