用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 head头信息分析及java实现

1,客户端第一次下载 客户端request head信息 GET /test/micro.rar HTTP/1.1 User-Agent:  RANGE: bytes=0- Host: ...
  • tornadowp
  • tornadowp
  • 2012年01月11日 13:43
  • 5918

Java 获取http请求头内容

String headValue = request.getHeader("user-agent"); Enumeration en = request.getHeade...
  • u011072139
  • u011072139
  • 2016年01月28日 16:26
  • 10689

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

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

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

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

php 检测文件是否存在的几种方式

网页中一些图片获取失败,会显示一个空的图片,影响美观。 检测文件是否存在的几种方式" TITLE="php 检测文件是否存在的几种方式" /> 服务器获取图片地址时,可以先判断图片地址是否有效,如...
  • iong_l
  • iong_l
  • 2017年04月07日 10:56
  • 788

java访问远程文件判断是否存在的问题

最近做了一个访问远程文件是否存在的程序 其中判断远程文件是否存在的内容是这样的: import java.net.HttpURLConnection; import java.net.URL; ...
  • liqingzhu7
  • liqingzhu7
  • 2017年06月28日 11:42
  • 699

FTP服务器文件存在性判断

在实际使用FTP文件服务器的过程中,经常需要远程下载解析文件。为提高效率,需要判断文件存在与否,有选择的进行解析。 这里对项目中的一个小片段进行备份,方便以后总结学习。...
  • foget_over
  • foget_over
  • 2017年05月11日 15:43
  • 1320

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

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

java中直接判断ftp上文件夹下是否存在某文件的方法

目前我所知,通过java中没有直接判断文件是否存在的方法,只能通过遍历目录即listFiles的方法来进行,但是这样读取目录特别耗内存,因此想看看有没有别的方法比如new File(filename)...
  • lishirong
  • lishirong
  • 2014年12月02日 09:52
  • 18583

判断文件是否存在的shell脚本代码

转载地址:http://www.jb51.net/article/34330.htm -f 和-e的区别 Conditional Logic on Files -a file exists. ...
  • pengrui18
  • pengrui18
  • 2015年11月03日 09:13
  • 1905
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:用HTTP Head 试探网络上的一个文件存在,但是不去下载?
举报原因:
原因补充:

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