java模拟http get和post 提交

使用Java模拟http请求.rar 使用Java模拟http请求.rar使用Java模拟http请求.rar 立即下载
使用httpclient工具包commons-httpclient-3.1.jar,依赖commons-logging-1.0.4.jar和commons-codec-1.3.jar。 
Java代码 复制代码  收藏代码
  1. import java.io.BufferedReader;   
  2. import java.io.IOException;   
  3. import java.io.InputStreamReader;   
  4. import java.util.Map;   
  5.   
  6. import org.apache.commons.httpclient.HttpClient;   
  7. import org.apache.commons.httpclient.HttpMethod;   
  8. import org.apache.commons.httpclient.HttpStatus;   
  9. import org.apache.commons.httpclient.URIException;   
  10. import org.apache.commons.httpclient.methods.GetMethod;   
  11. import org.apache.commons.httpclient.methods.PostMethod;   
  12. import org.apache.commons.httpclient.params.HttpMethodParams;   
  13. import org.apache.commons.httpclient.util.URIUtil;   
  14.   
  15. /**  
  16.  *   
  17.  *   
  18.  * <p>Title:HttpTookitEnhance</p>  
  19.  * <p>Description: httpclient模拟http请求,解决返回内容乱码问题</p>  
  20.  * <p>Copyright: Copyright (c) 2010</p>  
  21.  * <p>Company: </p>  
  22.  * @author libin  
  23.  * @version 1.0.0  
  24.  */  
  25. public class HttpTookitEnhance   
  26. {   
  27.       /**   
  28.        * 执行一个HTTP GET请求,返回请求响应的HTML   
  29.        *   
  30.        * @param url                 请求的URL地址   
  31.        * @param queryString 请求的查询参数,可以为null   
  32.        * @param charset         字符集   
  33.        * @param pretty            是否美化   
  34.        * @return 返回请求响应的HTML   
  35.        */  
  36.       public static String doGet ( String url, String queryString, String charset, boolean pretty )   
  37.       {   
  38.             StringBuffer response = new StringBuffer();   
  39.             HttpClient client = new HttpClient();   
  40.             HttpMethod method = new GetMethod(url);   
  41.             try  
  42.             {   
  43.                   if ( queryString != null && !queryString.equals("") )   
  44.                         //对get请求参数做了http请求默认编码,好像没有任何问题,汉字编码后,就成为%式样的字符串    
  45.                         method.setQueryString(URIUtil.encodeQuery(queryString));   
  46.                   client.executeMethod(method);   
  47.                   if ( method.getStatusCode() == HttpStatus.SC_OK )   
  48.                   {   
  49.                         BufferedReader reader = new BufferedReader(new InputStreamReader(method.getResponseBodyAsStream(), charset));   
  50.                         String line;   
  51.                         while ( ( line = reader.readLine() ) != null )   
  52.                         {   
  53.                               if ( pretty )   
  54.                                     response.append(line).append(System.getProperty("line.separator"));   
  55.                               else  
  56.                                     response.append(line);   
  57.                         }   
  58.                         reader.close();   
  59.                   }   
  60.             }   
  61.             catch ( URIException e )   
  62.             {   
  63.             }   
  64.             catch ( IOException e )   
  65.             {   
  66.             }   
  67.             finally  
  68.             {   
  69.                   method.releaseConnection();   
  70.             }   
  71.             return response.toString();   
  72.       }   
  73.   
  74.       /**   
  75.        * 执行一个HTTP POST请求,返回请求响应的HTML   
  76.        *   
  77.        * @param url         请求的URL地址   
  78.        * @param params    请求的查询参数,可以为null   
  79.        * @param charset 字符集   
  80.        * @param pretty    是否美化   
  81.        * @return 返回请求响应的HTML   
  82.        */  
  83.       public static String doPost ( String url, Map<String, String> params, String charset, boolean pretty )   
  84.       {   
  85.             StringBuffer response = new StringBuffer();   
  86.             HttpClient client = new HttpClient();   
  87.             HttpMethod method = new PostMethod(url);   
  88.             //设置Http Post数据    
  89.             if ( params != null )   
  90.             {   
  91.                   HttpMethodParams p = new HttpMethodParams();   
  92.                   for ( Map.Entry<String, String> entry : params.entrySet() )   
  93.                   {   
  94.                         p.setParameter(entry.getKey(), entry.getValue());   
  95.                   }   
  96.                   method.setParams(p);   
  97.             }   
  98.             try  
  99.             {   
  100.                   client.executeMethod(method);   
  101.                   if ( method.getStatusCode() == HttpStatus.SC_OK )   
  102.                   {   
  103.                         BufferedReader reader = new BufferedReader(new InputStreamReader(method.getResponseBodyAsStream(), charset));   
  104.                         String line;   
  105.                         while ( ( line = reader.readLine() ) != null )   
  106.                         {   
  107.                               if ( pretty )   
  108.                                     response.append(line).append(System.getProperty("line.separator"));   
  109.                               else  
  110.                                     response.append(line);   
  111.                         }   
  112.                         reader.close();   
  113.                   }   
  114.             }   
  115.             catch ( IOException e )   
  116.             {   
  117.             }   
  118.             finally  
  119.             {   
  120.                   method.releaseConnection();   
  121.             }   
  122.             return response.toString();   
  123.       }   
  124.   
  125.       public static void main ( String [] args )   
  126.       {   
  127.             String y = doGet("http://video.sina.com.cn/life/tips.html", null, "GBK", true);   
  128.             System.out.println(y);   
  129.       }   
  130.   
  131. } 
java模拟https基本jar包 java用于模拟https需要的jar包 包含commons-lang-2.6.jar、httpclient-4.3.2.jar、httpcore-4.3.jar、commons-io-2.4.jar、httpmime-4.3.1.jar、httpclient-cache-4.3.1.jar 立即下载

相关推荐

java httpclient 模拟登录

模拟登录 不提供用户名密码

深入解析MockServer:Java中的模拟HTTP服务器和客户端

MockServer是一个开源的模拟服务器,它可以模拟任何基于HTTP的系统。你可以使用MockServer来模拟复杂的系统响应,而无需搭建一个完整的服务。这对于微服务架构中的服务间通信、第三方API集成测试或任何需要模拟HTTP响应的情形都非常有用。

weixin_53840353的博客 1753

Java发送post,get请求

java模拟HTTP发送post和get请求工具类,使用httpClient类

java模拟调用get请求

import java.io.BufferedReader; import java.io.InputStreamReader; import java.net.URL; import java.net.URLConnection; import java.text.NumberFormat; import java.util.List; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; import java.ut..

NullToSay的踩坑日常 891

手把手教你设计STM32的JTAG电路:从原理图到PCB布局(含JLINK连接详解)

本文详细介绍了STM32的JTAG电路设计全流程,从核心原理、接口规范到PCB布局布线技巧,特别包含JLINK调试器的连接与配置方法。通过信号滤波、上拉配置和防反接保护等关键设计要点,帮助开发者构建稳定可靠的JTAG调试环境,提升嵌入式开发效率。

weixin_29159441的博客 388

机器学习系列(1)_逻辑回归初步

1、总述 逻辑回归是应用非常广泛的一个分类机器学习算法,它将数据拟合到一个logit函数(或者叫做logistic函数)中,从而能够完成对事件发生的概率进行预测。 2、由来     要说逻辑回归,我们得追溯到线性回归,想必大家对线性回归都有一定的了解,即对于多维空间中存在的样本点,我们用特征的线性组合去拟合空间中点的分布和轨迹。如下图所示:     线性回归能对连续值结果进行预测,

寒小阳 13万+

Java模拟http请求

Java实现http请求主要有3种方式:URLConnection、HttpURLConnection、HttpClient 一 URLConnection 抽象类,属于Java发送http请求的原生api,操作简单 1. 构造URL对象 2. 获取URL对应的URLConnection对象 3. 设置URLConnection的属性值 4. 获取输出流写入数据 5. 获取输...

fantasyleaves的博客 899

如何用Python分析20年投资者情绪数据(附ISI和CICSI完整数据集)

本文提供了一份利用Python分析2003-2023年投资者情绪数据的实战指南。文章详细介绍了如何获取并清洗ISI和CICSI数据集,运用Pandas、Matplotlib等工具进行数据探索、可视化与深度分析,包括趋势分解、成分关联及情绪状态划分,旨在帮助读者掌握从数据到洞察的完整流程,为量化金融研究提供方法论支持。

gpu4optimizer的博客 469

java 模拟get post请求_java端模拟http的get、post请求(转)

Servlet是SUN指定的Java服务器端编程规范,用以处理来自客户端的请求,处理并做出响应的一套基础API。Servlet是运行在Servlet容器中的Java小程序,容器运行在服务器端,服务器侦听特定端口的请求,并解析请求地址,将请求对象送给容器中的Servlet来执行,这个原理非常简单,平时我们多以在浏览器中输入URL地址,提交表单方式来实现,现在我们用Java语言来模拟常用的GET和PO...

weixin_32380307的博客 775

Proteus仿真AT89C51驱动DHT11:温湿度数据采集与LCD1602显示的5个调试坑点总结

本文总结了在Proteus仿真环境下使用AT89C51驱动DHT11温湿度传感器并通过LCD1602显示的5个常见调试坑点,包括DHT11时序问题、LCD1602初始化错误、数据校验失败、仿真特有差异及系统稳定性问题,提供了详细的解决方案和优化代码示例,帮助开发者高效完成温湿度采集项目。

weixin_30335575的博客 356

【RL in VLA】VLA中的强化学习

本文提出了一种名为 Reinforcement Learning Distilled Generalist(RLDG) 的方法,通过强化学习生成高质量训练数据来微调机器人基础模型。通过在多个精确操作任务上的实验,我们证明了 RLDG 在成功率和泛化能力上显著优于使用人类演示的传统微调方法。RLDG 不仅减少了对人类演示数据的依赖,还展示了在复杂多阶段任务中的灵活性和有效性。

三木今天学习了嘛の博客 2257

Java模拟发送Http请求详细示例

对接第三方接口,肯定是需要我们自己模拟浏览器来发送请求的,有的文档中有demo,有demo改一改参数配置就好了,但有的接口却没有demo,只有一份接口参数介绍文档,这时候就需要我们自己来写发送请求的代码了。使用依赖 请求代码如下:......

weixin_47316183的博客 4319

Host是如何与EC通信的

EC中有三个寄存器,分别为状态寄存器EC_SC、命令寄存器EC_SC和数据寄存器EC_DATA。而状态寄存器和命令寄存器同属于一个寄存器,这几个寄存器遵循着ACPI EC规范。host可以根据ACPI协议规范来与EC进行通信。 以下是个寄存器的详细介绍。 EC状态寄存器(EC_SC(R)),该寄存器是一个只读寄存器,它反映了此时EC接口的状态。下图为该寄存器表。 EC状态寄存器表中各位的具体含义: OBF(Output Buffer is Full),该状态位置1...

qq_30135687的博客 3696

java http 模拟提交post_Java模拟Http Get和Post 提交

本帖最后由 html580 于 2014-5-15 10:06 编辑在工具中有时我们要进行模态表单提交数据,现在给大家一个通过通过HttpURLConnection模拟Http Get和Post表单提交。相关文章: Java 使用HttpClient模拟 Http Get和Post 提交package com.html580.connection;import java.io.BufferedRe...

weixin_39607240的博客 218

一文掌握 MongoDB 详细安装与配置(Windows / Linux / macOS 全平台)

本文详细介绍了MongoDB社区版7.0+在Windows、Linux和macOS三大操作系统上的完整安装、配置与安全加固流程。主要内容包括:各平台推荐安装方式(Windows使用MSI安装包、Linux通过官方仓库、macOS通过Homebrew)、基本配置参数说明、服务启动方法以及关键安全措施(如创建管理员用户和启用身份验证)。文章还提供了系统最低要求、下载地址、数据目录设置建议以及生产环境使用注意事项,适合开发、测试及生产环境部署参考。

数据知道的博客 6714

使用自己的数据跑通mmsegmentation

使用自己的数据跑通mmsegmentation,解决以下报错:1)type object 'FileClient' has no attribute 'infer_client' 2)It is expected output_size equals to 2, but got size 3 3)训练测试结果报NAN 4)KeyError: 'MyDataset is not in the dataset registry' 5)预训练模型和加载的网络结构层名有差异,unexpected key .....

猫猫与橙子的博客 1656

java socket post_socket模拟http中post或者get提交数据,并获得响应数据

post提交模拟import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.IOException;import java.io.InputStreamReader;import java.io.OutputStreamWriter;import java.net.InetAddress;import jav...

weixin_42364640的博客 710

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

Java 使用 URLConnection 模拟 Http Get和Post 提交

Java 使用 URLConnection 模拟 Http Get和Post 提交 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintWriter; import java.net.URL; import

梦想起飞的地方......... 662

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

java模拟http get和post 提交 httpclient

原文地址:http://blog.youkuaiyun.com/miniyaner/article/details/12423435 原文post的处理不是很方便,本人对其进行了改造,下面为改造完后的代码: 使用httpclient工具包commons-httpclient-3.1.jar,依赖commons-logging-1.0.4.jar和commons-codec-1.3.jar。

木偶笔记 486

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

java httpclient教程_Java 使用HttpClient模拟 Http Get和Post 提交

package com.html580.connection;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.HashMap;import java.util.Map;import org.apache.commons.httpcli...

weixin_31739613的博客 301

HTTP通信模拟表单提交数据

前面记录过一篇关于http通信,发送数据的文章:http://www.cnblogs.com/hyyq/p/7089040.html,今天要记录的是如何通过http模拟表单提交数据。 一、通过GET请求方式提交:最简单的一种方式   直接在链接后面跟上要提交的数据即可,比如: http://yychf.55555.io/get.do?username=yyc&password=yychf,通过

caoliu1024cl的博客 2266
上一篇: Android 小项目之--Mini音乐播放器【简单版】
下一篇: eclipse中设置换行
hoyan_li
博客等级 码龄14年 5粉丝 43原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值