java - Java/OKHTTP:不获取网站正文的 HEAD 查询
问题描述
我的应用程序需要获取所有必要信息都已包含在 HTTP-HEAD-Part 中的 URL。我不需要网站的内容,所以最有效的方法是在头部完全加载时停止加载。
有没有办法用 JAVA 和 OKHTTP 做到这一点?现在,这就是我所做的:
MyAnswer = MyHTTPClient.newCall(new Request.Builder().url("https://www.example.com").get().build()).execute();
Body = MyAnswer.body().string();
MyAnswer.body().close();
我需要的信息是 301-Redirect-Location,我目前正在通过拦截器提取它。一旦我知道这些信息,我就会返回 null 以阻止它加载:
private static class LoggingInterceptor implements Interceptor {
@Override
public Response intercept(Interceptor.Chain chain) throws IOException {
try {
Response response = chain.proceed(chain.request());
if (response.isRedirect()) {
//SAVE RESPONSE
return null;
}
}
return response;
} catch (SocketTimeoutException e) {
return null;
}
}
}
这是正确的方法吗?谢谢!
解决方案
推荐阅读
- python - Python pandas 两列索引和区域。该地区有州,然后是城镇。我需要一个显示相应状态的新列
- javascript - GWT 异步回调
- variables - 检查变量中是否有子字符串-同一行中的命令(cmd / c)
- java - JDBC/Postgres 如何将无时区的 java.util.Date 与时间戳进行比较?
- python - AWS lambda CLI 'update-function-code' 不更新 lambda_handler 文件
- caching - Sendmail - 询问收件人总是 5 秒
- dask - 是否可以在传递整个 DataFrame 切片以应用的 Dask DataFrames 上进行滚动操作?
- dafny - 使用类时缺少程序集引用
- c# - “Microsoft.Extensions.DependencyInjection”和每个环境的不同具体
- c# - 具有多个元素的 LINQ to XML