httpclient(httpclient 无响应怎么办)

2023-06-14 00:00:02 73

httpclient(httpclient 无响应怎么办)

本文目录

httpclient 无响应怎么办

String result = ““;
DefaultHttpClient httpclient = new DefaultHttpClient();
//设置超时事件
HttpConnectionParams.setConnectionTimeout(httpclient.getParams(), Constants.CONNECTIONTIMEOUTMILLIS);
HttpConnectionParams.setSoTimeout(httpclient.getParams(), Constants.SOCKETTIMEOUTMILLIS);
try {
HttpGet httpget = new HttpGet(url);
ResponseHandler《String》 responseHandler = new BasicResponseHandler();
String responseBody = httpclient.execute(httpget, responseHandler);
result=responseBody;
logger.debug(“ end!“);
}catch(Exception e){
logger.debug(“ error:“+e);
} finally {
httpclient.getConnectionManager().shutdown();
}
return result;

如何接收httpclient发送的请求

客户端向服务器发送数据份两种情况SSL单向验证SSL双向验证
1.SSL单向验证
代码:
Java代码
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.HttpException;
import org.apache.commons.httpclient.HttpStatus;
import org.apache.commons.httpclient.NameValuePair;
import org.apache.commons.httpclient.methods.PostMethod;
import org.apache.commons.httpclient.params.HttpClientParams;
import org.apache.commons.httpclient.params.HttpMethodParams;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
public class ClientSendData {
static Log log = LogFactory.getLog(ClientSendData.class);
private String Url;
// 初始化数据
public ClientSendData() {
Url = ““;
}
public String sendData(String data) {
String receivedData = null;
try {
Map paramsData = new HashMap();
paramsData.put(“data“, data);
receivedData = send(Url, paramsData);
} catch (Exception e) {
e.printStackTrace();
}
return receivedData;
}
public static String send(String url, Map paramsMap) {
String result = null;
PostMethod postMethod = null;
HttpClient httpClient = new HttpClient();
httpClient.getParams().setParameter(
HttpMethodParams.HTTP_CONTENT_CHARSET, “utf-8“);
postMethod = new PostMethod(url);
if (paramsMap != null && paramsMap.size() 》 0) {
NameValuePair;
int index = 0;
for (String key : paramsMap.keySet()) {
datas = new NameValuePair(key, paramsMap.get(key));
}
postMethod.setRequestBody(datas);
}
HttpClientParams httparams = new HttpClientParams();
httparams.setSoTimeout(60000);
postMethod.setParams(httparams);
try {
int statusCode = httpClient.executeMethod(postMethod);
if (statusCode == HttpStatus.SC_OK) {
result = postMethod.getResponseBodyAsString();
log.info(“发送功“);
} else {
log.error(“ http response status is “ + statusCode);
}
} catch (HttpException e) {
log.error(“error url=“ + url, e);
} catch (IOException e) {
log.error(“error url=“ + url, e);
} finally {
if (postMethod != null) {
postMethod.releaseConnection();
}
}
return result;
}
public static void main(String args) {
ClientSendData t = new ClientSendData();
t.sendData(“测试SSL单项连接向服务端发送数据!“);
}
}
能现异
1.java.net.ConnectException: Connection refused: connect
服务器没启
2 .javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed
服务端证书信解决办见篇文章
3.java.net.SocketException: Software caused connection abort: recv failed
由于服务端配置SSL双向认证客户端发送数据按照服务器单向认证发送即没客户端证书信息起发送给服务端
4.org.apache.commons.httpclient.NoHttpResponseException
般服务端防火墙原拦截客户端请求
另外服务端负载重现问题
5.javax.net.ssl.SSLHandshakeException: Remote host closed connection during handshake
由于服务端配置SSL双向认证客户端发送数据按照服务器单向认证发送即没客户端证书信息起发送给服务端服务端验证客户端证书发现客户端没证书断握手连接
2.SSL双向验证
双向验证暂知道何用HTTPCLIENT发送数据需要双向验证发送数据参考我另外文章另外知道HTTPCLIENT何双向验证发送数据恳请指教

如何使用httpclient访问双向ssl认证的网站

首先
create a custom class from org.apache.http.conn.ssl.SSLSocketFactory
Java code?
public class MySSLSocketFactory extends SSLSocketFactory {
SSLContext sslContext = SSLContext.getInstance(“TLS“);

public MySSLSocketFactory(KeyStore truststore) throws NoSuchAlgorithmException, KeyManagementException, KeyStoreException, UnrecoverableKeyException {
super(truststore);

TrustManager tm = new X509TrustManager() {
public void checkClientTrusted(X509Certificate chain, String authType) throws CertificateException {
}

public void checkServerTrusted(X509Certificate chain, String authType) throws CertificateException {
}

public X509Certificate getAcceptedIssuers() {
return null;
}
};

sslContext.init(null, new TrustManager { tm }, null);
}

@Override
public Socket createSocket(Socket socket, String host, int port, boolean autoClose) throws IOException, UnknownHostException {
return sslContext.getSocketFactory().createSocket(socket, host, port, autoClose);
}

@Override
public Socket createSocket() throws IOException {
return sslContext.getSocketFactory().createSocket();
}
}
然后
Java code?
//SSLSocketFactory socketFactory = new SSLSocketFactory(trustStore);
SSLSocketFactory socketFactory = new MySSLSocketFactory(trustStore);
socketFactory.setHostnameVerifier(SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER);

Scheme sch = new Scheme(“https“, socketFactory, 8443);
httpclient.getConnectionManager().getSchemeRegistry().register(sch);
...

如何接收httpclient 文件上传

在struts2中结合HttpClient进行文件上传
最近遇到了用httpclient进行上传文件的问题,下面我就和大家简单的说一下:
package com.imps.action;
import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;
import java.util.List;
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.methods.PostMethod;
public class TabinfoAction extends BaseAction
{
private File myFile;
private String myFileFileName;// 文件名
private Integer myFileFileSize;// 文件大小
private String myFileContentType;// 文件类型
public String uploadPost()
{
String posturl =“http://127.0.0.1:8080/settabimage.aspx“;
System.out.println(posturl);
String status=null;
for(int i=0;i《myFile.length;i++)
{
FileInputStream file=new FileInputStream(myFile);
InputStream in = new BufferedInputStream(file);
PostMethod post=new PostMethod(posturl);
post.setRequestBody(in);
HttpClient client = new HttpClient();
client.executeMethod(post);
String response=new String(post.getResponseBodyAsString().getBytes(“ISO-8859-1“),“UTF-8“);
post.releaseConnection();
in.close();
file.close();
}
}
public File getMyFile() {
return myFile;
}
public void setMyFile(File myFile) {
this.myFile = myFile;
}
public String getMyFileFileName() {
return myFileFileName;
}
public void setMyFileFileName(String myFileFileName) {
this.myFileFileName = myFileFileName;
}
public Integer getMyFileFileSize() {
return myFileFileSize;
}
public void setMyFileFileSize(Integer myFileFileSize) {
this.myFileFileSize = myFileFileSize;
}
public String getMyFileContentType() {
return myFileContentType;
}
public void setMyFileContentType(String myFileContentType) {
this.myFileContentType = myFileContentType;
}
千万记住不要记忘记关闭流和释放http连接

HttpClient和HttpURLConnection的区别

首先:在 JDK 的 java.net 包中已经提供了访问 HTTP 协议的基本功能:HttpURLConnection。但是对于大部分应用程序来说,JDK 库本身提供的功能还不够丰富和灵活。
在Android中,androidSDK中集成了Apache的HttpClient模块,用来提供高效的、最新的、功能丰富的支持 HTTP 协议工具包,并且它支持 HTTP 协议最新的版本和建议。使用HttpClient可以快速开发出功能强大的Http程序。
其次:HttpClient是个很不错的开源框架,封装了访问

netty httpclient和httpclient的区别

netty是nio服务端客户端框架。可以快速简单的开发网络程序。
netty

httpclient和restclient有什么区别

HttpClient3为什么比HttpClient4性能要好很多

HttpClient 4:
连接超时:
httpclient.getParams().setParameter(CoreConnectionPNames.CONNECTION_TIMEOUT,60000);
// 或者
HttpConnectionParams.setConnectionTimeout(params, 6000);
读取超时:
httpclient.getParams().setParameter(CoreConnectionPNames.SO_TIMEOUT,60000);
// 或者
HttpConnectionParams.setSoTimeout(params, 60000);
HttpClient 3:
连接超时:
httpClient.getHttpConnectionManager().getParams().setConnectionTimeout(60000);
读取超时:
httpClient.getHttpConnectionManager().getParams().setSoTimeout(60000);

httpclient(httpclient 无响应怎么办)

本文编辑:admin
: httpclient,c,

更多文章:


xhtml表示(乘号在html代码中怎么表示)

xhtml表示(乘号在html代码中怎么表示)

本篇文章给大家谈谈xhtml表示,以及乘号在html代码中怎么表示对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。本文目录乘号在html代码中怎么表

2024年8月7日 17:35

authentication failure(Authentication failure是什么意思)

authentication failure(Authentication failure是什么意思)

“authentication failure”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看authentication failure(Authentication failure是什么意思)!本文目录Authentic

2024年7月1日 02:21

冒泡排序能排字符串类型的吗(字符串的冒泡排序(一定要用c语言))

冒泡排序能排字符串类型的吗(字符串的冒泡排序(一定要用c语言))

本文目录字符串的冒泡排序(一定要用c语言)C语言用冒泡法对六个字符串按从小到大排字符串冒泡排序java 用冒泡排序法排序字符串数组如何使用冒泡排序方法排序一个字符串数组给定程序功能是用冒泡法对6个字符串进行排序冒泡排序:输入n个字符串,对其

2024年7月6日 17:22

lbound和ubound(VB中ubound()是什么意思啊)

lbound和ubound(VB中ubound()是什么意思啊)

本文目录VB中ubound()是什么意思啊vb里的lbound和ubound的用法vb lbound uboundVB中ubound()是什么意思啊a是数组,ubound是取数组下标上界的函数,还有另外一个相关函数lbound,是取数组下

2024年7月4日 19:03

堆和栈的区别js(js中String()、new String()探究)

堆和栈的区别js(js中String()、new String()探究)

本文目录js中String()、new String()探究js 堆内存和栈内存的区别,还有就是对象的值是保存在哪个内存的js栈内存和堆内存的区别JavaScript原型,原型链 有什么特点javascript 中不同类型以及不同环境下变量

2024年7月24日 07:32

php新闻发布管理系统(我在做一个新闻管理系统,用的是PHP,遇到点问题)

php新闻发布管理系统(我在做一个新闻管理系统,用的是PHP,遇到点问题)

其实php新闻发布管理系统的问题并不复杂,但是又很多的朋友都不太了解我在做一个新闻管理系统,用的是PHP,遇到点问题,因此呢,今天小编就来为大家分享php新闻发布管理系统的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!本

2024年9月8日 15:01

timestamp without time zone(“column“create_time“isoftype timestamp without timezone but expression isoftype charactervarying “)

timestamp without time zone(“column“create_time“isoftype timestamp without timezone but expression isoftype charactervarying “)

本文目录“column“create_time“isoftype timestamp without timezone but expression isoftype charactervarying “Postgresql中to_date

2024年7月22日 11:14

composition是啥成分(compound和composition的区别)

composition是啥成分(compound和composition的区别)

本文目录compound和composition的区别composition的用法和短语例句皮衣上这个成分composltlon是什么意思衣服标签上有composition什么意思皮包面料卖家说是牛皮的,回去看了吊牌的成分:composit

2024年6月19日 00:46

postgresql新手入门教程(SQL实战新手入门:创建数据库)

postgresql新手入门教程(SQL实战新手入门:创建数据库)

各位老铁们好,相信很多人对postgresql新手入门教程都不是特别的了解,因此呢,今天就来为大家分享下关于postgresql新手入门教程以及SQL实战新手入门:创建数据库的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧

2024年9月8日 04:55

ae怎么加模板?现在人都用手机做视频,我想AE制作视频,求模板

ae怎么加模板?现在人都用手机做视频,我想AE制作视频,求模板

本文目录ae怎么加模板现在人都用手机做视频,我想AE制作视频,求模板ae怎么加模板要导入他的工程文件,然后才可以替换图片。下面我一步步来说:1.把鼠标挪到项目栏,点击——“导入”找到自己要导入的工程文件,再点对话框下方的“导入”;2.把素材

2023年6月25日 16:00

js开发培训(前端开发培训机构时间安排)

js开发培训(前端开发培训机构时间安排)

“js开发培训”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看js开发培训(前端开发培训机构时间安排)!本文目录前端开发培训机构时间安排web前端培训课程都学习什么内容_学web前端培训学校web前端培训有哪些课程前端开发培

2024年9月8日 07:45

core java(core java 哪个版本)

core java(core java 哪个版本)

本文目录core java 哪个版本Java中core层是做什么的请问corejava是java的一个版本语言吗还是什么:core java 都包含哪些内容Core Java和Java有什么区别core java 哪个版本现在最新版本的Co

2024年7月8日 04:42

oracle服务名和实例名(如何区分Oracle的数据库,实例,服务名,SID)

oracle服务名和实例名(如何区分Oracle的数据库,实例,服务名,SID)

本文目录如何区分Oracle的数据库,实例,服务名,SIDOracle 实例名/服务名 请问SID和ServiceOracle 服务名、实例名、数据库名、全局数据库名是什么概念,连接数据库时输入哪个它与SQL SERVER 实例oracle

2024年6月26日 21:57

饿了吗客服电话人工台(饿了客服电话人工拨号)

饿了吗客服电话人工台(饿了客服电话人工拨号)

大家好,今天小编来为大家解答以下的问题,关于饿了吗客服电话人工台,饿了客服电话人工拨号这个很多人还不知道,现在让我们一起来看看吧!本文目录饿了客服电话人工拨号饿了么客服电话人工电话10105757怎么转人工饿了么客服电话人工台饿了客服电话人

2024年7月26日 10:00

指针变量的自增运算(++)表示将它指向的地址值增加1个字节()?c++中的指针自增1,取地址的值会自增1吗比如:

指针变量的自增运算(++)表示将它指向的地址值增加1个字节()?c++中的指针自增1,取地址的值会自增1吗比如:

本文目录指针变量的自增运算(++)表示将它指向的地址值增加1个字节()c++中的指针自增1,取地址的值会自增1吗比如:c语言里指针自增的问题,C语言中文件指针如何进行自增数组指针自增的问题一个指针赋值给另一个指针,这个指针还能自增吗指针变量

2024年7月5日 02:50

给虚拟机提供操心系统的是哪个组件(以下哪些是云服务器ecs产品组件)

给虚拟机提供操心系统的是哪个组件(以下哪些是云服务器ecs产品组件)

本文目录以下哪些是云服务器ecs产品组件虚拟机与虚拟系统管理器的关系适用于虚拟机的精简操作系统讨论常见的虚拟机软件(如VMware,Boch)能不能理解为操作系统微软的Hyper-V和VMware的虚拟化有什么区别什么是虚拟机操作系统试对其

2024年6月18日 08:13

invalid file version(植物大战僵尸一直出现invalid file version怎么解决)

invalid file version(植物大战僵尸一直出现invalid file version怎么解决)

本文目录植物大战僵尸一直出现invalid file version怎么解决下载了植物大战僵尸进不去,出了一个 Invalid file version ,为什么invalidfileversion英语是什么意思我安装游戏软件的时出现Err

2024年7月21日 12:39

亚马逊雨林到底有多恐怖(为什么说亚马逊雨林是人类禁区有多恐怖)

亚马逊雨林到底有多恐怖(为什么说亚马逊雨林是人类禁区有多恐怖)

本文目录为什么说亚马逊雨林是人类禁区有多恐怖为啥说亚马逊雨林是人类的禁区它到底有多么吓人亚马逊雨林看起来是绿色天堂, 实则是人类禁区, 到底有多恐怖地球之肺亚马逊雨林,绿色的天堂却是人类禁区,到底有多恐怖为什么说亚马逊雨林是人类禁区有多恐怖

2024年6月28日 13:05

struggle against(struggle with与stuggle against有什么区别)

struggle against(struggle with与stuggle against有什么区别)

本文目录struggle with与stuggle against有什么区别struggle against, struggle with 和 struggle for有什么区别struggle against diseases英语Stru

2024年6月25日 06:28

索尼相机的raw是有损的,究竟和无损的raw差多少?编写一个java该程序使用drawline的方法绘制一个四行八列的表格

索尼相机的raw是有损的,究竟和无损的raw差多少?编写一个java该程序使用drawline的方法绘制一个四行八列的表格

本文目录索尼相机的raw是有损的,究竟和无损的raw差多少编写一个java该程序使用drawline的方法绘制一个四行八列的表格索尼相机的raw是有损的,究竟和无损的raw差多少具体究竟差多少不得而知 但是从逻辑角度不难分析 想省事儿直接提

2023年9月27日 06:40

近期文章

本站热文

iphone vpn设置(ios设置vpn快捷开关)
2024-07-22 15:01:12 浏览:2334
windows12正式版下载(操作系统Windows Server 2012 R2,在哪能下载到,公司用的)
2024-07-20 17:26:53 浏览:1730
java安装教程(win10如何安装JAVA)
2024-07-19 19:55:49 浏览:1156
client mfc application未响应(每次进cf就提示client MFC Application未响应该怎么办啊!急急急)
2024-07-20 11:15:58 浏览:1152
标签列表

热门搜索