使用其 URL 检查远程服务器上是否存在文件
2022-08-31 15:35:18
如果远程服务器上存在文件(由HTTP提供),如何检查Java,并具有其URL?我不想下载该文件,只需检查它的存在。
如果远程服务器上存在文件(由HTTP提供),如何检查Java,并具有其URL?我不想下载该文件,只需检查它的存在。
import java.net.*;
import java.io.*;
public static boolean exists(String URLName){
try {
HttpURLConnection.setFollowRedirects(false);
// note : you may also need
// HttpURLConnection.setInstanceFollowRedirects(false)
HttpURLConnection con =
(HttpURLConnection) new URL(URLName).openConnection();
con.setRequestMethod("HEAD");
return (con.getResponseCode() == HttpURLConnection.HTTP_OK);
}
catch (Exception e) {
e.printStackTrace();
return false;
}
}
如果与 URL 的连接(使用 HttpURLConnection 建立)返回 HTTP 状态代码 200,则该文件存在。
编辑:请注意,由于我们只关心它是否存在,因此无需请求整个文档。我们可以使用HTTP HEAD请求方法来请求标头,以检查它是否存在。
public static boolean exists(String URLName){
try {
HttpURLConnection.setFollowRedirects(false);
// note : you may also need
// HttpURLConnection.setInstanceFollowRedirects(false)
HttpURLConnection con =
(HttpURLConnection) new URL(URLName).openConnection();
con.setRequestMethod("HEAD");
return (con.getResponseCode() == HttpURLConnection.HTTP_OK);
}
catch (Exception e) {
e.printStackTrace();
return false;
}
}