
Http/HttpURLConnection
文章平均质量分 81
零度anngle
情商不是八面玲珑的圆滑,而是德行具足后的虚心、包容和自信;成熟不是单纯到复杂的世故,而是复杂回归简单的超然;觉悟不是对世事的无所谓,而是对无能为力之事的坦然接受;成功不是追求别人眼中的最好,而是把自己能做的事情做得最好。热爱生活,热爱编程,热爱Java,喜欢探索,纸上得来终觉浅,绝知此事要躬行,愿与你一起在技术的海洋中成长!
博客:http://blog.csdn.net/zmx729618
展开
-
Http认证之Basic认证
文章主要讲如何在tomcat中配置Basic认证以及工作流程: Tomcat配置: 1 在tomcat的webapps下新建一个目录authen,再建立子目录subdir,下面放一个index.jsp 2 在authen目录下建立WEB-INF目录,下放web.xml文件,内容如下 Xml代码 security-constraint> w转载 2016-05-11 10:04:28 · 5535 阅读 · 0 评论 -
java中httpclient实现digest验证的请求
[java] view plain copy print?package test.util; import java.net.URI; import java.util.ArrayList; import java.util.List; import org.apache.commons.httpclient.auth.AuthPolicy; impor原创 2016-05-11 10:11:35 · 9930 阅读 · 0 评论 -
HttpClient使用详解(4.3.X以上版本)
Http协议的重要性相信不用我多说了,HttpClient相比传统JDK自带的URLConnection,增加了易用性和灵活性(具体区别,日后我们再讨论),它不仅是客户端发送Http请求变得容易,而且也方便了开发人员测试接口(基于Http协议的),即提高了开发的效率,也方便提高代码的健壮性。因此熟练掌握HttpClient是很重要的必修内容,掌握HttpClient后,相信对于Http协议的了解会原创 2016-07-01 11:38:40 · 10935 阅读 · 0 评论 -
HttpClient模仿登陆并维持同一session请求(HttpClient4.3.X以上版本)
有时我们会碰到一种应用场景:就是在请求服务器前需要先验证用户合法,验证通过后,服务器保持保持同一sessionID与客户端交互,下面我模拟这种场景,用户首先发送post请求进行身份验证,通过后,继续发送上传文件的请求,服务器端需要保证只有登录成功的用户才能上传图片。工具类及测试代码如下:package zmx.httpclient.test;import java.io.File;imp翻译 2016-07-01 15:47:44 · 20386 阅读 · 5 评论 -
response.setHeader()设置下载中文文件名乱码问题
1. HTTP消息头(1)通用信息头即能用于请求消息中,也能用于响应信息中,但与被传输的实体内容没有关系的信息头,如Data,Pragma主要: Cache-Control , Connection , Data , Pragma , Trailer , Transfer-Encoding , Upgrade(2)请求头用于在请求消息中向服务器传递附加信息,转载 2016-07-04 15:58:43 · 42065 阅读 · 0 评论 -
中文数据网络传输转码与解码过程浅析
网络中传输数据,尤其是中文必然会遇到,转码与解码过程,中文产生乱码问题也就发生在该过程的某一环节,下面我将用代码的方式模拟整个转码和解码过程,相信理解此文之后,对所有中文乱码都会找到原因并处理之。在此之前,我们首先解一下网络发送数据的过程。以中文为例:中文的传输过程具体可能是:内存中unicode -> 编码阶段gbk, gb18030,gb2312,utf8 -> 到ISO8859-1 ->最后原创 2016-07-04 17:50:38 · 2523 阅读 · 0 评论 -
Java序列化对象的一个使用案例-使用Http发送对象
《 Effective Java 》中序列化一节关于java的序列化存在如下说法:对象序列化(object serialization)API,它提供了一个框架,用来将对象编码成字节流(serializing),并从字节流编码中重新构建对象(deserializing)。一旦对象被序列化后,它的编码就可以从一台正在运行的jvm传到另一台jvm上,或者被存储在磁盘上,供以后反序列化时用(如tomca转载 2016-10-14 11:14:58 · 6979 阅读 · 1 评论 -
jquery post时content-type的几种取值详解
我们知道,HTTP 协议是以 ASCII 码传输,建立在 TCP/IP 协议之上的应用层规范。规范把 HTTP 请求分为三个部分:状态行、请求头、消息主体。类似于下面这样: 协议规定 POST 提交的数据必须放在消息主体(entity-body)中,但协议并没有规定数据必须使用什么编码方式。实际上,开发者完全可以自己决定消息主体的格式,只要最后发送的 HTTP 请求满转载 2017-01-06 17:43:00 · 5661 阅读 · 0 评论 -
HTTP协议浅析
HTTP(HyperText Transfer Protocol)是一套计算机通过网络进行通信的规则。计算机专家设计出HTTP,使HTTP客户(如Web浏览器)能够从HTTP服务器(Web服务器)请求信息和服务,HTTP目前协议的版本是1.1.HTTP是一种无状态的协议,无状态是指Web浏览器和Web服务器之间不需要建立持久的连接,这意味着当一个客户端向服务器端发出请求,然后Web服务器返回响应(转载 2017-01-12 10:56:16 · 418 阅读 · 0 评论 -
HTTPS原理与应用
第一部分:HTTPS原理一、什么是HTTPS在说HTTPS之前先说说什么是HTTP,HTTP就是我们平时浏览网页时候使用的一种协议。HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协议传输隐私信息非常不安全。为了保证这些隐私数据能加密传输,于是网景公司设计了SSL(Secure Sockets Layer)协议用于对HTTP协议传输的数据进行加密,从而就诞生了HTTPS。转载 2017-06-12 15:49:06 · 986 阅读 · 0 评论 -
HTTP安全通信HTTPS:SSL协议
1. HTTPS概念 1)简介 HTTPS(全称:Hypertext Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。这个系统的最初研发由网景公司进行,提供了身份验证与加密通转载 2017-06-12 16:17:12 · 4476 阅读 · 0 评论 -
HTTP协议头及错误码详解
通常HTTP消息包括客户机向服务器的请求消息和服务器向客户机的响应消息。客户端向服务器发送一个请求,请求头包含请求的方法、URI、协议版本、以及包含请求修饰符、客户信息和内容的类似于MIME的消息结构。服务器以一个状态行作为响应,相应的内容包括消息协议的版本,成功或者错误编码加上包含服务器信息、实体元信息以及可能的实体内容。 Http协议定义了很多与服务器交互的方法,最基本的有4种,翻译 2016-06-03 09:56:40 · 11597 阅读 · 0 评论 -
使用HttpURLConnection实现页面静态化工具类
package zmx.util;import java.io.ByteArrayOutputStream;import java.io.File;import java.io.FileOutputStream;import java.io.InputStream;import java.net.HttpURLConnection;import java.net.URL;原创 2016-04-20 14:23:03 · 1069 阅读 · 0 评论 -
Http认证之Digest认证
和讲Basic篇的内容差不多,不同的是过程采用的是DIGEST认证: Tomcat配置: 1 在tomcat的webapps下新建一个目录authen,再建立子目录subdir,下面放一个index.jsp 2 在authen目录下建立WEB-INF目录,下放web.xml文件,内容如下 Xml代码 security-constraint>转载 2016-05-11 10:09:05 · 4951 阅读 · 0 评论 -
HTTPS安全通信:HTTPS与SSL
1. HTTPS概念 1)简介 HTTPS(全称:Hypertext Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。这个系统的最初研发由网景公司进行,提供了身份验证转载 2016-05-11 10:59:51 · 7343 阅读 · 0 评论 -
HttpsURLConnection实现SSL的GET/POST请求
package org.nercita.weixin.util;import java.security.cert.CertificateException;import java.security.cert.X509Certificate;import javax.net.ssl.X509TrustManager;/** * 证书信任管理器(用于https请求) * 这个证书管原创 2016-05-11 11:02:57 · 23270 阅读 · 2 评论 -
Java访问https接口实现(JDK/Httpclient4)
用两种方式分别实现了,第一种是jdk原生的,代码稍微多点,第二种是基于httpclient4版本的。在我的机器上,访问同一个接口原生的性能要好很多(前者900ms,后者5.7s左右),httpclient主要性能消耗在"HttpResponse res = client.execute(post);",大约占总执行时间的90%。 1、JDK API Java代码转载 2016-05-11 11:32:36 · 3905 阅读 · 0 评论 -
使用HttpUrlConnection进行post请求上传文件
使用HttpUrlConnection模拟post表单进行文件上传平时很少使用,比较麻烦。 原理是: 分析文件上传的数据格式,然后根据格式构造相应的发送给服务器的字符串。格式如下:这里的httppost123是我自己构造的字符串,可以是其他任何的字符串----------httppost123 (\r\n)Content-Disposition: form-da转载 2016-05-11 15:20:45 · 1153 阅读 · 0 评论 -
HttpURLConnection实现文件断点续传
首先client端:[java] view plain copy print?HttpURLConnection conn = null; BufferedInputStream fin = null; BufferedOutputStream out = null; URL reqUrl;转载 2016-05-11 15:32:06 · 4150 阅读 · 1 评论 -
Java Socket 实现HTTP与HTTPS协议发送POST/GET请求
JAVA Socket 实现HTTP与HTTPS客户端发送POST与GET方式请求 哇,一看标题怎么这么长啊,其实意思很简单,哥讨厌用HTTP Client做POST与GET提交觉得那个毕竟是别人写得API库,所以我就自己实现了一个简单的HTTP客户端,支持POST方式提交数据,GET方式查询数据,是测试Restful API比较方便点,然后支持form与JSON两种翻译 2016-05-11 15:00:31 · 17903 阅读 · 6 评论 -
HTTP基本认证(Basic Authentication)的JAVA示例
大家在登录网站的时候,大部分时候是通过一个表单提交登录信息。但是有时候浏览器会弹出一个登录验证的对话框,如下图,这就是使用HTTP基本认证。下面来看看一看这个认证的工作过程:第一步: 客户端发送http request 给服务器,服务器验证该用户是否已经登录验证过了,如果没有的话,服务器会返回一个401 Unauthozied给客户端,并且在Response 的 header转载 2016-05-11 16:15:14 · 6498 阅读 · 0 评论 -
Http之Get/Post请求区别
一 原理区别 一般在浏览器中输入网址访问资源都是通过GET方式;在FORM提交中,可以通过Method指定提交方式为GET或者POST,默认为GET提交Http定义了与服务器交互的不同方法,最基本的方法有4种,分别是GET,POST,PUT,DELETEURL全称是资源描述符,我们可以这样认 为:一个URL地址,它用于描述一个网络上的资源,而HTTP中的GET,POS转载 2016-05-12 13:47:57 · 1589 阅读 · 1 评论 -
javaHTTP请求工具类-使用HttpURLConnection实现
package zmx.util;import java.io.BufferedReader; import java.io.IOException;import java.io.InputStream; import java.io.InputStreamReader; import java.io.OutputStreamWriter;import java.io.Unsu原创 2016-04-19 14:15:05 · 5035 阅读 · 0 评论 -
图文详解解SSL/TLS协议握手过程
一、SSL协议的握手过程开始加密通信之前,客户端和服务器首先必须建立连接和交换参数,这个过程叫做握手(handshake)。假定客户端叫做爱丽丝,服务器叫做鲍勃,整个握手过程可以用下图说明(点击看大图)。握手阶段分成以下五步:第一步,爱丽丝给出协议版本号、一个客户端生成的随机数(Client random),以及客户端支持的加密方法。第二步,转载 2017-10-16 10:23:08 · 12816 阅读 · 1 评论