[英]jsoup statusCode won't print 404 error
在我的 Java servlet 中,我想根據從請求返回到 url 的狀態代碼執行一些操作。
我的代碼如下所示:
String source = "http://urltoparse.org/name/date";
boolean validQuery = jsoupHandler.sourceExists(source);
int statusCode = jsoupHandler.srcExists(source);
response.getWriter().println("stat: " + statusCode);
jsoupHandler:
public class JSoupHandler {
public int srcExists(String source) throws IOException {
Connection.Response resp = Jsoup.connect(source).execute();
System.out.println("status" + resp.statusCode());
return resp.statusCode();
}
}
當statusCode == 200
,它會打印
stat: 200
瀏覽器中的stat: 200
和status200
控制台中的status200。
但是,當我輸入應該返回 404 的源時,如下所示:
String source = "http://urltoparse.org/name/date2";
瀏覽器不打印任何內容,我的控制台打印如下錯誤:
org.jsoup.HttpStatusException: HTTP error fetching URL. Status=404, URL=http://urltoparse.org/name/date2
為什么瀏覽器和控制台的打印語句都不打印狀態碼? 我想做類似的事情
if (statusCode != 200) {
//do something
}
但我無法進入這個條件語句。
我看過這個鏈接: 無法連接到網站時的 Jsoup 錯誤處理
但無法讓它為我工作。
添加
.ignoreHttpErrors(true)
根據您的要求。
見API: https : //jsoup.org/apidocs/org/jsoup/Connection.html#ignoreHttpErrors-boolean-
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.