用HTTP Head 试探网络上的一个文件存在,但是不去下载?

原创 2017年03月15日 20:29:24

在我们的应用中,有的时候会试探一个文件是否存在,一个图片是否存在,但是不去真正的去下载,特别是文件比较大的时候。那么这个时候,我们的代码应该如何写呢?下面是基于JDK 自身API的一种实现方式:使用HTTP的HEAD方法。

import java.io.IOException;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;

import org.junit.Test;

public class URLTest {

	@Test
	public void testURL(){
		String urlstr="https://www.broward.org/EasyPay/Learning/Documents/TimecardsSchedulesSupervUseGuide.pdf";
		try {
			long begin=System.currentTimeMillis();
			URL url=new URL(urlstr);
			HttpURLConnection httpURLConnection=(HttpURLConnection)url.openConnection();
			httpURLConnection.setRequestMethod("HEAD");
			int responsecode=httpURLConnection.getResponseCode();
			System.out.println("-----"+responsecode);
			long end=System.currentTimeMillis();
			System.out.println("--Time Consumed---"+(end-begin));
		} catch (MalformedURLException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
}


如果Fiddler 4模拟,其报文如下:



版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

HTTP头部详解及使用Java套接字处理HTTP请求

 进行Web开发关键是要了解超文本传输协议(HTTP),该协议用来传输网页、图像以及因特网上在浏览器与服务器间传输的其他类型文件。只要你在浏览器上输入一个URL,最前面的http://就表示使用HTT...

服务器下载文件Http头的设置

网站提供下载服务时经常需要实现一个强制下载功能(即强制弹出下载对话框),并且文件名保持和用户之前上传时相同。 效果如下图:  Content-Disposition 使用 HTTP Hea...
  • wwd0501
  • wwd0501
  • 2015年11月17日 18:09
  • 7181

Http协议之获取自定义文件Head信息(1)

我目前经常用到的Http请求中经常用到的三种:GET: 请求指定的页面信息,并返回实体主体。 HEAD: 只请求页面的首部。 POST: 请求服务器接受所指定的文档作为对所标识的URI的新的从属实...

Http协议之获取自定义文件Head信息(2)

上一篇写到将http请求的head解析出来,本篇将对我写的具体的业务记录,供参考。//如果有测试环境,例如上篇讲到的DHC request.getSession().setAttribute("ecc...

文件下载 Http网络连接

1.文件下载步骤: 1.1创建一个HttpURLConnection对象:HttpURLConnection urlConn = (HttpURLConnection)url.openConnect...

基于http协议的网络文件下载原理

基于HTTP的协议的网络文件下载,工作原理建立在请求/响应模式(Request/Response)上:一个客户端与服务器建立连接后,客户端向Web服务器发出一个HTTP请求行;Web服务器在收到有效的...

用HTTP协议下载一个MP3文件

在visual studio上调试通过的,这个只是一个示例,还有很多不完善的细节(鲁棒性)需要考虑。 主要流程: 1)创建一个TCP连接 2)发送一个HTTP GET命令 3)读取一段数据,解...

安卓中使用HTTP从网络下载文件到SD卡程序

程序实现在安卓中下载在PC端tomcat中的文件并将其存放到SD卡当中并显示。程序主要代码: //HttpDownLoad类,该类提供了通过url得到一个http连接的方法和一个从指定url得到...
  • yxtouch
  • yxtouch
  • 2014年09月10日 21:26
  • 801
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:用HTTP Head 试探网络上的一个文件存在,但是不去下载?
举报原因:
原因补充:

(最多只允许输入30个字)