先看测试结果
get请求访问https://www.baidu.com/,返回了html页面
post请求访问某后台接口
正文
包含以下6种方法
<1> sendGet(String url)
<2> sendGet(String url, String params)
<3> sendGet(String url, Map<String,String> headers, String params)
<4> sendPost(String url)
<5> sendPost(String url, String params)
<6> sendPost(String url, Map<String, String> headers, String params)
package com.util;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.URL;
import java.net.URLConnection;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
public class HttpSender {
public static void main(String[] args) {
Map<String, String> headers = new HashMap<>();
headers.put("token", "succeed");
headers.put("Content-Type", "application/json");
String url="https://www.baidu.com/";
String result = HttpSender.sendGet(url, headers, null);
System.out.println("result = " + result);
}
/**
*
* @param url 请求路径(非null)
* @return 响应体
*/
public static String sendGet(String url) {
String result = "";
BufferedReader in = null;
try {
String urlName =url;
URL realUrl = new URL(urlName);
URLConnection conn = realUrl.openConnection();
conn.setRequestProperty("accept", "*/*");
conn.setRequestProperty("connection", "Keep-Alive");
//conn.setRequestProperty("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)");
conn.connect();
Map<String, List<String>> map = conn.getHeaderFields();
for (String key : map.keySet()) {
System.out.println(key + "--->" + map.get(key));
}
in = new BufferedReader(new InputStreamReader(conn.getInputStream()));
String line;
while ((line = in.readLine()) != null) {
result += "\n" + line;
}
} catch (Exception e) {
System.out.println("发送get请求异常" + e);
e.printStackTrace();
} finally {
try {
if (in != null) {
in.close();
}
} catch (IOException ex) {
ex.printStackTrace();
}
}
return result;
}
/**
*
* @param url 请求路径(非null)
* @param params 请求体body(可为null)
* @return 响应体
*/
public static String sendGet(String url, String params) {
String result = "";
BufferedReader in = null;
try {
String urlName = url;
if(params!=null){
urlName =url + "?" + params;
}
URL realUrl = new URL(urlName);
URLConnection conn = realUrl.openConnection();
conn.setRequestProperty("accept", "*/*");
conn.setRequestProperty("connection", "Keep-Alive");
//conn.setRequestProperty("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)");
conn.connect();
Map<String, List<String>> map = conn.getHeaderFields();
for (String key : map.keySet()) {
System.out.println(key + "--->" + map.get(key));
}
in = new BufferedReader(new InputStreamReader(conn.getInputStream()));
String line;
while ((line = in.readLine()) != null) {
result += "\n" + line;
}
} catch (Exception e) {
System.out.println("发送get请求异常" + e);
e.printStackTrace();
} finally {
try {
if (in != null) {
in.close();
}
} catch (IOException ex) {
ex.printStackTrace();
}
}
return result;
}
/**
*
* @param url 请求路径(非null)
* @param headers 请求头(可为null)
* @param params 请求体body(可为null)
* @return 响应体
*/
public static String sendGet(String url, Map<String,String> headers, String params) {
String result = "";
BufferedReader in = null;
try {
String urlName = url;
if(params!=null){
urlName =url + "?" + params;
}
URL realUrl = new URL(urlName);
URLConnection conn = realUrl.openConnection();
conn.setRequestProperty("accept", "*/*");
conn.setRequestProperty("connection", "Keep-Alive");
//conn.setRequestProperty("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)");
if(headers!=null) {
Set<String> keySets = headers.keySet();
for (String key : keySets) {
conn.setRequestProperty(key, headers.get(key));
}
}
conn.connect();
Map<String, List<String>> map = conn.getHeaderFields();
for (String key : map.keySet()) {
System.out.println(key + "--->" + map.get(key));
}
in = new BufferedReader(new InputStreamReader(conn.getInputStream()));
String line;
while ((line = in.readLine()) != null) {
result += "\n" + line;
}
} catch (Exception e) {
System.out.println("发送get请求异常" + e);
e.printStackTrace();
} finally {
try {
if (in != null) {
in.close();
}
} catch (IOException ex) {
ex.printStackTrace();
}
}
return result;
}
/**
*
* @param url 请求地址(非null)
* @return 响应体
*/
public static String sendPost(String url) {
PrintWriter out = null;
BufferedReader in = null;
String result = "";
try {
URL readUrl = new URL(url);
URLConnection conn = readUrl.openConnection();
conn.setRequestProperty("accept", "*/*");
conn.setRequestProperty("select_nation_id", "KZ");
conn.setRequestProperty("tiens_token", "appmustsucceed");
conn.setRequestProperty("Content-Type", "application/json");
conn.setDoOutput(true);
conn.setDoInput(true);
out = new PrintWriter(conn.getOutputStream());
out.flush();
in = new BufferedReader(new InputStreamReader(conn.getInputStream()));
String line;
while ((line = in.readLine()) != null) {
result += "\n" + line;
}
} catch (Exception e) {
System.out.println("发送POST请求异常" + e);
e.printStackTrace();
} finally {
try {
if (out != null) {
out.close();
}
if (in != null) {
in.close();
}
} catch (IOException ex) {
ex.printStackTrace();
}
}
return result;
}
/**
*
* @param url 请求地址(非null)
* @param params 请求体body(可为null)
* @return 响应体
*/
public static String sendPost(String url, String params) {
PrintWriter out = null;
BufferedReader in = null;
String result = "";
try {
URL readUrl = new URL(url);
URLConnection conn = readUrl.openConnection();
conn.setRequestProperty("accept", "*/*");
conn.setRequestProperty("select_nation_id", "KZ");
conn.setRequestProperty("tiens_token", "appmustsucceed");
conn.setRequestProperty("Content-Type", "application/json");
conn.setDoOutput(true);
conn.setDoInput(true);
out = new PrintWriter(conn.getOutputStream());
if(params!=null) {
out.print(params);
}
out.flush();
in = new BufferedReader(new InputStreamReader(conn.getInputStream()));
String line;
while ((line = in.readLine()) != null) {
result += "\n" + line;
}
} catch (Exception e) {
System.out.println("发送POST请求异常" + e);
e.printStackTrace();
} finally {
try {
if (out != null) {
out.close();
}
if (in != null) {
in.close();
}
} catch (IOException ex) {
ex.printStackTrace();
}
}
return result;
}
/**
*
* @param url 请求路径(非null)
* @param headers 请求头(可为null)
* @param params 请求体body(可为null)
* @return 响应体
*/
public static String sendPost(String url, Map<String, String> headers, String params) {
PrintWriter out = null;
BufferedReader in = null;
String result = "";
try {
URL readUrl = new URL(url);
URLConnection conn = readUrl.openConnection();
conn.setRequestProperty("accept", "*/*");
if(headers!=null) {
Set<String> keySets = headers.keySet();
for (String key : keySets) {
conn.setRequestProperty(key, headers.get(key));
}
}
conn.setDoOutput(true);
conn.setDoInput(true);
out = new PrintWriter(conn.getOutputStream());
if(params!=null) {
out.print(params);
}
out.flush();
in = new BufferedReader(new InputStreamReader(conn.getInputStream()));
String line;
while ((line = in.readLine()) != null) {
result += "\n" + line;
}
} catch (Exception e) {
System.out.println("发送POST请求异常" + e);
e.printStackTrace();
} finally {
try {
if (out != null) {
out.close();
}
if (in != null) {
in.close();
}
} catch (IOException ex) {
ex.printStackTrace();
}
}
return result;
}
}
版权声明:本文为weixin_43660088原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。