package com.jm.http.tools;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.net.HttpURLConnection;
import java.net.URL; import org.apache.log4j.Logger; /**
* HTTP请求代理类
*
* @author hsw
* @version 1.0, 2007-7-3
*/
public class UrlOpreate { private static Logger logger = Logger.getLogger(UrlOpreate.class); /**
* POST
**/
public static String sendPostRequest(String requestUrl, String payload) {
StringBuffer jsonString = new StringBuffer();
HttpURLConnection connection=null;
BufferedReader br=null;
try {
URL url = new URL(requestUrl);
connection = (HttpURLConnection) url.openConnection(); connection.setDoInput(true);
connection.setDoOutput(true);
connection.setRequestMethod("POST"); connection.setRequestProperty("user-agent", "Mozilla/5.0 (compatible; MSIE 11.0; Windows NT 6.1; Trident/5.0)");
connection.setRequestProperty("Accept", "application/json");
connection.setRequestProperty("Content-Type", "application/json; charset=UTF-8");
connection.setReadTimeout(300000);
connection.setConnectTimeout(300000); OutputStreamWriter writer = new OutputStreamWriter(connection.getOutputStream(), "UTF-8");
writer.write(payload);
writer.close();
br = new BufferedReader(new InputStreamReader(connection.getInputStream())); String line;
while ((line = br.readLine()) != null) {
jsonString.append(line);
}
br.close();
connection.disconnect(); }catch(Exception e){
e.printStackTrace();
br = new BufferedReader(new InputStreamReader(connection.getErrorStream()) );
String line;
try {
while ((line = br.readLine()) != null) {
jsonString.append(line);
}
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}finally{
connection.disconnect();
try {
br.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return jsonString.toString();
}
public static String sendPostRequestH(String requestUrl, String payload) {
StringBuffer jsonString = new StringBuffer();
HttpURLConnection connection=null;
BufferedReader br=null;
try {
URL url = new URL(requestUrl);
connection = (HttpURLConnection) url.openConnection(); connection.setDoInput(true);
connection.setDoOutput(true);
connection.setRequestMethod("POST");
connection.setRequestProperty("Accept", "application/json");
connection.setRequestProperty("Content-Type", "application/json; charset=UTF-8");
connection.setRequestProperty("resultData", payload);
OutputStreamWriter writer = new OutputStreamWriter(connection.getOutputStream(), "UTF-8");
writer.write("");
writer.close();
br = new BufferedReader(new InputStreamReader(connection.getInputStream())); String line;
while ((line = br.readLine()) != null) {
jsonString.append(line);
}
br.close();
connection.disconnect(); }catch(Exception e){
e.printStackTrace();
br = new BufferedReader(new InputStreamReader(connection.getErrorStream()) );
String line;
try {
while ((line = br.readLine()) != null) {
jsonString.append(line);
}
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}finally{
connection.disconnect();
try {
br.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return jsonString.toString();
} /**
* PUT
**/ public static String doPut(String strUrl,String param){
StringBuffer jsonString = new StringBuffer();
HttpURLConnection httpCon=null;
BufferedReader br=null;
try{
URL url = new URL(strUrl);
httpCon = (HttpURLConnection) url.openConnection();
httpCon.setDoOutput(true);
httpCon.setRequestMethod("PUT");
OutputStreamWriter out = new OutputStreamWriter(
httpCon.getOutputStream());
out.write(param);
out.close();
br = new BufferedReader(new InputStreamReader(httpCon.getInputStream())); String line;
while ((line = br.readLine()) != null) {
jsonString.append(line);
} }catch(Exception e){
e.printStackTrace();
br = new BufferedReader(new InputStreamReader(httpCon.getErrorStream()) );
String line;
try {
while ((line = br.readLine()) != null) {
jsonString.append(line);
}
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}finally{
httpCon.disconnect();
try {
br.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return jsonString.toString();
} public static String getHTML2(String urlToRead) throws Exception {
StringBuilder result = new StringBuilder();
URL url = new URL(urlToRead);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("PUT");
try{
BufferedReader rd = new BufferedReader(new InputStreamReader(conn.getInputStream())); String line;
while ((line = rd.readLine()) != null) {
result.append(line);
}
rd.close();
}catch(Exception e){ System.out.println(conn.getResponseCode()); } return result.toString();
} /**
* GET
**/
public static String getHTML(String urlToRead) throws Exception {
BufferedReader br=null;
StringBuilder result =null;
HttpURLConnection conn=null;
try{
result = new StringBuilder();
URL url = new URL(urlToRead);
conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("GET");
br = new BufferedReader(new InputStreamReader(conn.getInputStream()));
String line;
while ((line = br.readLine()) != null) {
result.append(line);
}
}catch(Exception e){
e.printStackTrace();
br = new BufferedReader(new InputStreamReader(conn.getErrorStream()) );
String line;
try {
while ((line = br.readLine()) != null) {
result.append(line);
}
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}finally{
conn.disconnect();
try {
br.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} return result.toString();
}
public static String getHTML(String urlToRead,String payload) throws Exception {
StringBuffer jsonString = new StringBuffer();
BufferedReader br=null;
URL url = new URL(urlToRead);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
try { connection.setDoInput(true);
connection.setDoOutput(true);
connection.setRequestMethod("GET");
connection.setRequestProperty("Accept", "application/json");
connection.setRequestProperty("Content-Type", "application/json; charset=UTF-8");
OutputStreamWriter writer = new OutputStreamWriter(connection.getOutputStream(), "UTF-8");
writer.write(payload);
writer.close();
br = new BufferedReader(new InputStreamReader(connection.getInputStream(), "UTF-8"));
String line;
while ((line = br.readLine()) != null) {
jsonString.append(line);
}
br.close();
connection.disconnect();
} catch (Exception e) {
e.printStackTrace();
br = new BufferedReader(new InputStreamReader(connection.getErrorStream()) );
String line;
try {
while ((line = br.readLine()) != null) {
jsonString.append(line);
}
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
return jsonString.toString();
}
public static String getHTMLXQ(String urlToRead,String payload) throws Exception {
StringBuffer jsonString = new StringBuffer();
BufferedReader br=null;
URL url = new URL(urlToRead);
//http://nealcai.iteye.com/blog/2084442
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
try {
connection.setDoInput(true);
connection.setDoOutput(true);
connection.setRequestMethod("GET");
connection.setRequestProperty("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
connection.setRequestProperty("Connection", "keep-alive");
connection.setRequestProperty("Cookie", "Hm_lvt_1db88642e346389874251b5a1eded6e3=1529975814,1530498921,1530522215,1530522465; __utma=1.2081209674.1521790939.1527061820.1530522218.3; __utmz=1.1530522218.3.3.utmcsr=baidu|utmccn=(organic)|utmcmd=organic; device_id=eee17d8ff8702c633d2e5aef40091e3b; _ga=GA1.2.2081209674.1521790939; aliyungf_tc=AQAAANJkmXYQ0AUADTpltt1aHoUGzyIQ; xq_a_token=7443762eee8f6a162df9eef231aa080d60705b21; xq_a_token.sig=3dXmfOS3uyMy7b17jgoYQ4gPMMI; xq_r_token=9ca9ab04037f292f4d5b0683b20266c0133bd863; xq_r_token.sig=6hcU3ekqyYuzz6nNFrMGDWyt4aU; Hm_lpvt_1db88642e346389874251b5a1eded6e3=1530522562; _gid=GA1.2.257714409.1530498922; u=941530498925106; __utmc=1; s=e81dkxiqhm");
connection.setRequestProperty("Referer", "https://xueqiu.com/S/SH600507/ZYCWZB");
connection.setRequestProperty("Accept-Encoding", "gzip, deflate, br");
connection.setRequestProperty("Accept-Language", "zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2");
connection.setRequestProperty("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:61.0) Gecko/20100101 Firefox/61.0");
connection.setRequestProperty("Host", "xueqiu.com");
connection.setRequestProperty("Upgrade-Insecure-Requests", "1");
connection.setRequestProperty("Cache-Control", "max-age=0");
connection.connect();
OutputStreamWriter writer = new OutputStreamWriter(connection.getOutputStream(), "UTF-8");
writer.write(payload);
writer.close();
br = new BufferedReader(new InputStreamReader(connection.getInputStream()));
String line;
while ((line = br.readLine()) != null) {
jsonString.append(line);
}
br.close();
connection.disconnect();
} catch (Exception e) {
e.printStackTrace();
br = new BufferedReader(new InputStreamReader(connection.getErrorStream()) );
String line;
try {
while ((line = br.readLine()) != null) {
jsonString.append(line);
}
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
return jsonString.toString();
} /**
* DELETE
**/
public static void deleteHTML(String urlToRead) throws Exception {
URL url = new URL(urlToRead);
HttpURLConnection httpCon = (HttpURLConnection) url.openConnection();
httpCon.setDoOutput(true);
httpCon.setRequestProperty(
"Content-Type", "application/x-www-form-urlencoded" );
httpCon.setRequestMethod("DELETE");
httpCon.connect();
httpCon.disconnect(); } public static String deleteHTML(String strUrl,String param){
StringBuffer jsonString = new StringBuffer();
HttpURLConnection httpCon=null;
BufferedReader br=null;
try{
URL url = new URL(strUrl);
httpCon = (HttpURLConnection) url.openConnection();
httpCon.setDoOutput(true);
httpCon.setRequestMethod("DELETE");
OutputStreamWriter out = new OutputStreamWriter(
httpCon.getOutputStream());
out.write(param);
out.close();
br = new BufferedReader(new InputStreamReader(httpCon.getInputStream())); String line;
while ((line = br.readLine()) != null) {
jsonString.append(line);
} }catch(Exception e){
e.printStackTrace();
br = new BufferedReader(new InputStreamReader(httpCon.getErrorStream()) );
String line;
try {
while ((line = br.readLine()) != null) {
jsonString.append(line);
}
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}finally{
httpCon.disconnect();
try {
br.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return jsonString.toString();
} }

HTTP请求代理类(GET 、 POST 、PUT 、DELETE)的更多相关文章

  1. HTTP请求状态类

    <?php /** * 常用常量文件 * */ /** * HTTP协议请求状态 */ class HttpRequest { //100类 ----用于指定客户端应相应的某些动作---- co ...

  2. C# http请求工具类

    /// <summary> /// Http请求操作类之HttpWebRequest /// </summary> public class HttpHelper { #reg ...

  3. Struts2 源码分析——Action代理类的工作

    章节简言 上一章笔者讲到关于如何加载配置文件里面的package元素节点信息.相信读者到这里心里面对struts2在启动的时候加载相关的信息有了一定的了解和认识.而本章将讲到关于struts2启动成功 ...

  4. 解析利用wsdl.exe生成webservice代理类的详解

    利用wsdl.exe生成webservice代理类:根据提供的wsdl生成webservice代理类1.开始->程序->Visual Studio 2005 命令提示2.输入如下红色标记部 ...

  5. 【C++沉思录】代理类

    1.考虑下面的场景:设计一个容器,包含一组类型不同但相互关联的对象(比如:Animal,Dog,Cat),对象具备多态行为.2.容器一般只能包含一种类型的对象,使用vector<Animal&g ...

  6. 根据WSDL生成代理类方式

    方式一: 1.使用VS2010提供的工具wsdl.exe由WSDL文件生成cs文件 使用wsdl.exe的/serverInterface选项(或缩写的 /si)指定输入的wsdl文件(注意,如果要转 ...

  7. C++的代理类

    怎样在一个容器中包含类型不同,但是彼此有关系的对象?众所周知,C++的容器只能存放类型相同的元素,所以直接在一个容器中存储不同类型的对象本身是不可能的,只能通过以下两种方案实现: 1. 提供一个间接层 ...

  8. c++沉思录 学习笔记 第五章 代理类

    Vehicle 一个车辆的虚基类 class Vehicle {public: virtual double weight()const = 0; virtual void start() = 0; ...

  9. .net 代理类(WebService代理类的详解 )

    http://hi.baidu.com/654085966/item/53ee8c0f108ad78202ce1b1d   -----------转自 客户端调用Web Service的方式我现在知道 ...

随机推荐

  1. Python 绘图利器 —— ggplot

    安装: 命令行:pip install ggplot 1. 杂项 NameError: name 'ggsave' is not defined. Python ggplot- ggsave func ...

  2. DataGridTemplateColumn

    DataGridTemplateColumn自定义单元格样式 <DataGrid Grid.Row="0" Name="BasicRuleDataGrid" ...

  3. Servlet的基础知识

    没有什么固定的结构, 就是稍微总结一下学习到的, 基本上想到哪里写到哪里. 关于基本的最HttpServlet 实际上Servlet是J2EE(也就是现在的Java EE)中规范的一个接口, 用于根据 ...

  4. IDEA 问题 & 解决

    # 问题 Error: java: Compilation failed: internal java compiler error # 解决 http://blog.csdn.net/u011275 ...

  5. ELINK编程器支持芯片详细列表

    支持MCU芯片包括:STM32  F0.F1.F2.F3.F4.L0.L1全系列: GD32 F10XX系列. 各系列芯片支持详情如下:

  6. XE Delphi 判断字符为中文的方法

    在uses中添加System.AnsiStrings /// Param ch--字符串/// Param cno--字符位置 function IsZHChar(const ch: AnsiStri ...

  7. Java 访问修饰符详解

    访问修饰符定义了类.属性和方法的访问权限,Java 中包含四种,访问权限从小到大为 private.default.protected 和 public. public,公共修饰符,被其修饰的类.属性 ...

  8. Wow6432Node

    64 位版本 Windows 中的注册表分为 32 位注册表项和 64 位注册表项.许多 32 位注册表项与其相应的 64 位注册表项同名,反之亦然. 64 位版本 Windows 包含的默认 64 ...

  9. C# 生成txt日志文件

    /// <summary> /// 创建日志文件,每天一个 /// </summary> /// <param name="logContent"&g ...

  10. 零元学Expression Blend 4 - Chapter 42 五分钟快速完成扇形变圆形动画

    原文:零元学Expression Blend 4 - Chapter 42 五分钟快速完成扇形变圆形动画 零元学Expression Blend 4 - Chapter 42 五分钟快速完成扇形变圆形 ...