我通过尝试点击它们并获取响应代码(在 Java 中)来验证链接。但是我从代码中得到了无效的响应代码(403 或 404),但是从浏览器中,当我检查网络活动时,我得到了 200 个状态代码。这是我获取响应代码的代码。[我事先对 url 进行了基本验证,例如将其设为小写等]
static int getResponseCode(String link) throws IOException {
URL url = new URL(link);
HttpURLConnection http = (HttpURLConnection) url.openConnection();
return http.getResponseCode();
}
对于http://science.sciencemag.org/content/220/4599/868 之类的链接,当我运行此代码时,我得到了 403 状态。但是在浏览器(chrome)上,我得到了 200 个状态。另外,如果我使用下面的 curl 命令,我会得到 200 个状态码。
curl -Is http://science.sciencemag.org/content/220/4599/868