`
lan13217
  • 浏览: 496101 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

Get content in java (Post/Get)

    博客分类:
  • Java
 
阅读更多

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;

public class GET {

	public static void main(String[] args) throws Exception {  
		String urlstr = "http://s13.sinaimg.cn/middle/001IDODqty6FM269oy8fc&690";
		fetchImage(urlstr);
	}
	// HTTP GET request  
    private static void fetchImage(String imgUrl) throws Exception {     
		try {
			URL url = new URL(imgUrl);
			URLConnection conn = (URLConnection)url.openConnection(); 
			//add reuqest header
			//conn.setRequestMethod("GET");
			conn.setRequestProperty("User-Agent", "test");
			conn.setRequestProperty("Accept-Language", "en-US,en;q=0.5");
			conn.setRequestProperty("Referer", "http://s13.sinaimg.cn");
			
			// Send post request
			conn.setDoOutput(true);
			//save to this filename
			String fileName = "bbb";
			File file = new File(fileName);
 
			if (!file.exists()) {
				file.createNewFile();
			}
			InputStream is = conn.getInputStream();
			FileOutputStream fileout = new FileOutputStream(file);
			// 根据实际运行效果 设置缓冲区大小
			byte[] buffer = new byte[10 * 1024];
			int ch = 0;
			while ((ch = is.read(buffer)) != -1) {
				fileout.write(buffer, 0, ch);
			}
			is.close();
			fileout.flush();
			fileout.close();
		} catch (MalformedURLException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		} 
    }  
}


Java HttpURLConnection example
 
import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
 
import javax.net.ssl.HttpsURLConnection;
 
public class HttpURLConnectionExample {
 
	private final String USER_AGENT = "Mozilla/5.0";
 
	public static void main(String[] args) throws Exception {
 
		HttpURLConnectionExample http = new HttpURLConnectionExample();
 
		System.out.println("Testing 1 - Send Http GET request");
		http.sendGet();
 
		System.out.println("\nTesting 2 - Send Http POST request");
		http.sendPost();
 
	}
 
	// HTTP GET request
	private void sendGet() throws Exception {
 
		String url = "http://www.google.com/search?q=mkyong";
 
		URL obj = new URL(url);
		HttpURLConnection con = (HttpURLConnection) obj.openConnection();
 
		// optional default is GET
		con.setRequestMethod("GET");
 
		//add request header
		con.setRequestProperty("User-Agent", USER_AGENT);
 
		int responseCode = con.getResponseCode();
		System.out.println("\nSending 'GET' request to URL : " + url);
		System.out.println("Response Code : " + responseCode);
 
		BufferedReader in = new BufferedReader(
		        new InputStreamReader(con.getInputStream()));
		String inputLine;
		StringBuffer response = new StringBuffer();
 
		while ((inputLine = in.readLine()) != null) {
			response.append(inputLine);
		}
		in.close();
 
		//print result
		System.out.println(response.toString());
 
	}
 
	// HTTP POST request
	private void sendPost() throws Exception {
 
		String url = "https://selfsolve.apple.com/wcResults.do";
		URL obj = new URL(url);
		HttpsURLConnection con = (HttpsURLConnection) obj.openConnection();
 
		//add reuqest header
		con.setRequestMethod("POST");
		con.setRequestProperty("User-Agent", USER_AGENT);
		con.setRequestProperty("Accept-Language", "en-US,en;q=0.5");
 
		String urlParameters = "sn=C02G8416DRJM&cn=&locale=&caller=&num=12345";
 
		// Send post request
		con.setDoOutput(true);
		DataOutputStream wr = new DataOutputStream(con.getOutputStream());
		wr.writeBytes(urlParameters);
		wr.flush();
		wr.close();
 
		int responseCode = con.getResponseCode();
		System.out.println("\nSending 'POST' request to URL : " + url);
		System.out.println("Post parameters : " + urlParameters);
		System.out.println("Response Code : " + responseCode);
 
		BufferedReader in = new BufferedReader(
		        new InputStreamReader(con.getInputStream()));
		String inputLine;
		StringBuffer response = new StringBuffer();
 
		while ((inputLine = in.readLine()) != null) {
			response.append(inputLine);
		}
		in.close();
 
		//print result
		System.out.println(response.toString());
 
	}
 
}

Apache HttpClient
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
 
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
 
public class HttpClientExample {
 
	private final String USER_AGENT = "Mozilla/5.0";
 
	public static void main(String[] args) throws Exception {
 
		HttpClientExample http = new HttpClientExample();
 
		System.out.println("Testing 1 - Send Http GET request");
		http.sendGet();
 
		System.out.println("\nTesting 2 - Send Http POST request");
		http.sendPost();
 
	}
 
	// HTTP GET request
	private void sendGet() throws Exception {
 
		String url = "http://www.google.com/search?q=developer";
 
		HttpClient client = new DefaultHttpClient();
		HttpGet request = new HttpGet(url);
 
		// add request header
		request.addHeader("User-Agent", USER_AGENT);
 
		HttpResponse response = client.execute(request);
 
		System.out.println("\nSending 'GET' request to URL : " + url);
		System.out.println("Response Code : " + 
                       response.getStatusLine().getStatusCode());
 
		BufferedReader rd = new BufferedReader(
                       new InputStreamReader(response.getEntity().getContent()));
 
		StringBuffer result = new StringBuffer();
		String line = "";
		while ((line = rd.readLine()) != null) {
			result.append(line);
		}
 
		System.out.println(result.toString());
 
	}
 
	// HTTP POST request
	private void sendPost() throws Exception {
 
		String url = "https://selfsolve.apple.com/wcResults.do";
 
		HttpClient client = new DefaultHttpClient();
		HttpPost post = new HttpPost(url);
 
		// add header
		post.setHeader("User-Agent", USER_AGENT);
 
		List<NameValuePair> urlParameters = new ArrayList<NameValuePair>();
		urlParameters.add(new BasicNameValuePair("sn", "C02G8416DRJM"));
		urlParameters.add(new BasicNameValuePair("cn", ""));
		urlParameters.add(new BasicNameValuePair("locale", ""));
		urlParameters.add(new BasicNameValuePair("caller", ""));
		urlParameters.add(new BasicNameValuePair("num", "12345"));
 
		post.setEntity(new UrlEncodedFormEntity(urlParameters));
 
		HttpResponse response = client.execute(post);
		System.out.println("\nSending 'POST' request to URL : " + url);
		System.out.println("Post parameters : " + post.getEntity());
		System.out.println("Response Code : " + 
                                    response.getStatusLine().getStatusCode());
 
		BufferedReader rd = new BufferedReader(
                        new InputStreamReader(response.getEntity().getContent()));
 
		StringBuffer result = new StringBuffer();
		String line = "";
		while ((line = rd.readLine()) != null) {
			result.append(line);
		}
 
		System.out.println(result.toString());
 
	}
 
}
分享到:
评论

相关推荐

    java发送http/https请求(get/post)Demo,亲测可用

    这里我们将深入探讨如何使用Java发送GET和POST请求,以及处理JSON数据。 首先,让我们关注GET请求。GET请求主要用于从服务器获取资源,其参数通常包含在URL中。在Java中,可以使用`HttpURLConnection`类或者第三方...

    java发送http/https请求(get/post)代码

    本文将详细讲解如何使用Java发送GET和POST请求,以及涉及的HTTPS安全连接。 首先,理解HTTP和HTTPS的区别至关重要。HTTP(超文本传输协议)是一种用于分发超媒体信息的应用层协议,而HTTPS(超文本传输安全协议)是...

    HttpUtils Java get post 工具类

    "HttpUtils Java get post 工具类" 提供了便捷的方法来发送GET和POST请求,简化了网络请求的操作。以下是对这两个主要HTTP方法的详细解释以及如何在Java中实现它们。 **1. GET方法** GET是HTTP中最常见的请求方法,...

    java 实现get,post请求

    本篇文章将详细介绍如何在Java中实现GET和POST请求,以及相关的知识点。 首先,我们要了解GET和POST的区别。GET请求通常用于获取资源,其参数附加在URL后面,是可见的,且对数据长度有限制,一般不超过2KB。而POST...

    java HttpClient 发送GET请求和带有表单参数的POST请求教程例子

    ### Java HttpClient 发送GET请求和带有表单参数的POST请求详解 #### 一、概述 在Java编程中,处理HTTP请求是一项常见的需求,特别是在与Web服务进行交互时。Apache HttpClient库提供了一种强大的方法来执行HTTP...

    java发送post和get请求源码及jar包

    这两个例子展示了如何使用Java内置的HttpURLConnection类发送GET和POST请求。然而,对于更复杂的场景,如管理cookies、重定向、超时控制等,使用Apache HttpClient或OkHttp等第三方库可能会更方便和强大。 在实际...

    java发送get或post请求源码

    这里我们将介绍如何使用这两个类以及`java.io`包中的相关类来构建GET和POST请求。 1. **发送GET请求**: GET请求通常用于获取资源,参数包含在URL中。以下是一个简单的示例: ```java import java.io....

    EasyHttp_HTTP_并发_httpweb_post/get_EasyHttp_

    4. **HTTP 请求支持**:EasyHttp 支持标准的 HTTP GET 和 POST 请求,同时还提供了 PUT、DELETE 等其他常见的 HTTP 方法,满足了大多数 Web API 的交互需求。 5. **异步请求**:考虑到现代应用对性能的需求,...

    后台模拟发送GET和POST请求

    本文将深入探讨如何利用Java的HttpClient库在后台模拟发送GET和POST请求,以及如何处理中文乱码问题。 首先,我们来理解GET和POST两种请求方法。GET请求通常用于获取服务器上的资源,它将参数附加到URL中,具有可...

    android http post/get

    文件上传通常涉及POST请求,通过设置Content-Type为multipart/form-data。以下是一个使用Volley库上传文件的示例: ```java RequestQueue queue = Volley.newRequestQueue(this); StringRequest request = new ...

    java后台用GET POST方式提交封装类

    在Java后台开发中,HTTP请求是与服务器交互的基础,主要包括GET和POST两种主要方式。本文将深入探讨如何在Java中创建一个封装类来处理这两种请求,同时支持多参数和Cookie的处理。 首先,GET和POST是HTTP协议中的两...

    java中发送http包,包含get及post请求

    在Java编程语言中,发送HTTP请求是常见的网络通信任务,主要涉及GET和POST两种方法。GET主要用于获取资源,而POST用于向服务器提交数据。本文将详细介绍如何在Java中实现这两种HTTP请求,以及如何处理相关jar包。 ...

    HttpClient模拟get,post请求并发送请求参数(json等)

    httpPost.setHeader("Content-type", "application/json"); String json = "{\"key\":\"value\"}"; StringEntity entity = new StringEntity(json, "UTF-8"); httpPost.setEntity(entity); response = httpClient....

    java发http请求(post&get)

    本篇文章将详细介绍如何使用Java实现POST和GET两种HTTP请求方法。 首先,GET请求是最基础的HTTP请求方式,通常用于获取资源。在Java中,我们可以使用`java.net.HttpURLConnection`类来实现GET请求。以下是一个简单...

    HttpClient实现POST GET和文件下载

    以上就是HttpClient在Java中实现GET、POST请求以及文件下载的基本用法。在实际应用中,可能还需要处理如超时、重试、编码等问题,这需要对HttpClient的高级特性有更深入的理解。例如,可以自定义RequestConfig配置...

    java 后台实现get post 提交访问其他网站

    在Java后台开发中,我们经常需要通过HTTP协议与外部服务进行交互,比如GET和POST请求。这两种请求方法是HTTP协议中最基本的操作,用于从服务器获取数据(GET)或提交数据到服务器(POST)。下面将详细介绍如何在Java...

    java进行POST或者GET请求

    在Java编程中,进行POST或GET网络请求是常见的任务,主要应用于数据的发送与接收,例如API接口调用、网页抓取等。本篇将详细解释如何使用Java的`httpclient`包来实现这些功能。 首先,我们来看`HttpPostUtil.java`...

    HttpClient发送http请求(post和get)需要的jar包+内符java代码案例+注解详解

    这个库使得从Java程序中发起HTTP请求变得简单,包括GET和POST等常见操作。在本文中,我们将深入探讨HttpClient的基本用法,所需的jar包,以及如何编写Java代码实例。 1. **HttpClient所需Jar包**: 使用HttpClient...

    Java Http发起get和post请求

    本篇将详细介绍如何在Java中使用HttpURLConnection和HttpClient库来发起GET和POST请求。 **一、HttpURLConnection使用** 1. **GET请求** 发起GET请求,首先需要建立一个URL对象,然后通过openConnection()方法...

    java http 发送 put delete post get请求

    本篇将详细解释如何使用Java发送PUT、DELETE、POST和GET这四种主要的HTTP请求。 PUT请求常用于更新已有资源,它的特点是替换目标URL指定的整个资源。在Java中,可以使用HttpURLConnection或Apache HttpClient库来...

Global site tag (gtag.js) - Google Analytics