访问HTTP网址的两种方式
2019独角兽企业重金招聘Python工程师标准>>>
一、使用HttpClient:
NameValuePair username = new BasicNameValuePair("username", "zhangsan");
NameValuePair password = new BasicNameValuePair("password","1qaz2wsx");
List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(username);
params.add(password);
String validateURL = "http://10.1.1.0:8080/dbconnect/ConnectServlet";
try {
HttpParams httpParams = new BasicHttpParams();
HttpConnectionParams.setConnectionTimeout(httpParams,5000); //设置连接超时为5秒
HttpClient client = new DefaultHttpClient(httpParams); // 生成一个http客户端发送请求对象
HttpPost httpPost = new HttpPost(urlString); //设定请求方式
if (params!=null && params.size()!=0) {
//把键值对进行编码操作并放入HttpEntity对象中
httpPost.setEntity(new UrlEncodedFormEntity(params,HTTP.UTF_8));
}
HttpResponse httpResponse = client.execute(httpPost); // 发送请求并等待响应
// 判断网络连接是否成功
if (httpResponse.getStatusLine().getStatusCode() != 200) {
System.out.println("网络错误异常!");
}else{
HttpEntity entity = httpResponse.getEntity(); // 获取响应里面的内容
inputStream = entity.getContent(); // 得到服务气端发回的响应的内容(都在一个流里面)
// 得到服务气端发回的响应的内容(都在一个字符串里面)
String strResult = EntityUtils.toString(entity);
System.out.println(strResult);
}
} catch (Exception e) {
e.printStackTrace();
}
二、使用HttpURLConnection:
String validateUrl="http://10.1.1.0:8080/dbconnect/ConnectServlet?username=zhangsan&password=1qaz2wsx";
try {
URL url = new URL(validateUrl); //创建URL对象
//返回一个URLConnection对象,它表示到URL所引用的远程对象的连接
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setConnectTimeout(5000); //设置连接超时为5秒
conn.setRequestMethod("GET"); //设定请求方式
conn.connect(); //建立到远程对象的实际连接
//返回打开连接读取的输入流
BufferedInputStream dis = new BufferedInputStream(conn.getInputStream());
//判断是否正常响应数据
if (conn.getResponseCode() != HttpURLConnection.HTTP_OK) {
System.out.println("网络错误异常!");
}else{
//读取数据流
byte[] contents = new byte[1024];
int byteRead = 0;
String strFileContents;
try {
while((byteRead = dis.read(contents)) != -1){
strFileContents = new String(contents,0,byteRead);
System.out.println(strFileContents);
} catch (IOException e) {
e.printStackTrace();
}
dis.close();
}
} catch (Exception e) {
e.printStackTrace();
} finally {
if (conn != null) {
conn.disconnect(); //中断连接
}
}
转载于:https://my.oschina.net/u/154628/blog/755068
访问HTTP网址的两种方式相关推荐
- 使用ssh 访问越狱iPhone的两种方式
本文转自:再见依然 http://blog.csdn.net/woaizijiheni/article/details/49181295 近期,公司在开发一款手机助手,pc端同事需要从越狱的手机中拿数 ...
- Nginx配置同一个域名同时支持http与https两种方式访问
Nginx配置同一个域名http与https两种方式都可访问,证书是阿里云上免费申请的 server { listen 80; listen 443 ssl; ssl on; server_name ...
- Java面试题:synchronized和对象的访问定位的两种方式
说一说自己对于 synchronized 关键字的理解 ? synchronized关键字解决的是多个线程之间访问资源的同步性,synchronized关键字可以保证被它修饰的方法或者 代码块在任意时 ...
- Java常见面试题:对象的访问定位的两种方式
对象的访问定位的两种方式 java对象在访问的时候,我们需要通过java虚拟机栈的reference类型的数据去操作具体的对象. 由于reference类型在java虚拟机规范中只规定了一个对象的引用 ...
- 关于虚拟机中对象访问定位的两种方式的一些思考
前言 本文是在周志明老师经典作品<深入理解Java虚拟机>第二章第三节的基础上对句柄和直接指针两种对象访问方式的深入思考,有不准确的地方希望读者不吝赐教. JVM中访问对象的两种方式 1. ...
- 美国人在家用计算机访问网络,美国人在家里请客往往有两种方式
第一:邀请与应邀礼仪 美国人请客多用电话或当面提出,请帖上将列明日期.时间.地点和聚会的性质,接到邀请通常是要答复的,如果不当面亲口答复,写一个短柬或打电话即可.在美国,人们习惯上除非真正打算应约参加 ...
- python接口服务两种方式(被调用、主动推送)
项目中用python开发,要对外接口时,根据场景不同,一般有两种方式: 外部调用python接口,返回数据 接口主动向外部推送数据 1外部调用python接口,返回数据 这种方式一般可以通过http接 ...
- 快速搭建Springboot项目的两种方式!!
大家好,我是雄雄,欢迎关注微信公众号[雄雄的小课堂]. 前言 Springboot的特点就是简单.快速和方便,使用idea不到一分钟就可以快速搭建springboot项目,并且,在这里,你不用写spr ...
- apache http server 停止工作_Springboot以Tomcat为容器实现http重定向到https的两种方式
1 简介 本文将介绍在Springboot中如何通过代码实现Http到Https的重定向,本文仅讲解Tomcat作为容器的情况,其它容器将在以后一一道来. 建议阅读之前的相关文章: (1) Sprin ...
最新文章
- 36个创意广告海报欣赏
- android get请求最长字符串,android – Retrofit @GET – 如何显示请求字符串?
- Silverlight和WCF交互式的实战项目(更新完毕)
- java起源英文_Abbreviation 英文词组缩写(来源:南阳理工大学ACM)java
- python keras_深度学习:基于Keras的Python实践
- 网卡 远程唤醒问题故障排除
- armadillo 库加入项目中程序卡死不运行的问题
- c++学习笔记(15) 异常处理
- 国内29家视觉企业及最新动态一览
- 解析MOS管电流方向反及其体二极管能过多大电流问题
- windbg 查看结构体_Windbg入门实战讲解
- ps4仁王服务器不稳定,原来《仁王》放弃独占PS4早有预兆 未来将是跨平台大潮...
- 苏宁并购家乐福是零售市场必然走向
- bootcmd执行过程
- 使用自然语言处理来检测电子邮件中的垃圾邮件
- apmserver导入MySQL_APMServ MySQL 错误
- JVM堆内存(新生代,老年代,Xms,Xmx)学习整理
- 微信自定义菜单生成器
- 数据挖掘与分析——关联规则模型
- 有没有后悔当初选择了做程序员?
热门文章
- 2019年上半年收集到的人工智能开源框架介绍文章
- 机器学习-贝叶斯分类器
- SAP MM 预留单据里的Base date和Requirement date
- SAP MM 如何查询物料凭证号是由哪个IDoc Post后产生的?
- 干货丨人脸识别必读的N篇文章
- 详解math.isclose()用法
- (已解决torchvision中CIFAR10下载速度慢)如何下载以及使用torchvision导入
- 导航能力堪比GPS!动物们是这样做到的
- Nature子刊超越诺贝尔经典理论:神经科学研究路漫漫...
- 亚马逊自动打包机:1机可顶24人