Een wappie is iemand die gevallen is voor de (jarenlange) Russische desinformatiecampagnes.
Wantrouwen en confirmation bias doen de rest.
Het beste kun je kijken naar de status code die je van de server terugkrijgt; bij 200 bestaat je pagina, bij 404 bestaat de pagina zeker niet en bij de overige status codes heb je nog legio andere gevallen (redirected, tijdelijk niet beschikbaar, forbidden, etc.).
Daarvoor kun je de getResponseCode van het HttpURLConnection object gebruiken (dat je van openConnection terugkrijgt, als het goed is). De diverse status codes zijn al als constanten gedefinieerd (HttpURLConnection.HTTP_OK, HttpURLConnection.HTTP_NOT_FOUND, etcetera).
Daarvoor kun je de getResponseCode van het HttpURLConnection object gebruiken (dat je van openConnection terugkrijgt, als het goed is). De diverse status codes zijn al als constanten gedefinieerd (HttpURLConnection.HTTP_OK, HttpURLConnection.HTTP_NOT_FOUND, etcetera).
Dat is een geweldige tip! Ga het gelijk proberen. Dank je.
Een wappie is iemand die gevallen is voor de (jarenlange) Russische desinformatiecampagnes.
Wantrouwen en confirmation bias doen de rest.
Overigens kan het geen kwaad om na het creeëren van het object (door openConnection()) nog wel even setRequestMethod("HEAD") te doen omdat je anders waarschijnlijk alsnog de hele pagina ophaalt. (Eventueel ook setInstanceFollowRedirects(false).)
Beetje jammer dat uit de JavaDoc niet duidelijk blijkt wanneer nu precies de request gedaan wordt (en de gegevens dus verstuurd). Ik neem aan dat het niet met openConnection gebeurd aangezien je dan geen opties meer kan instellen. Waarschijnlijk gebeurd het 'wanneer het nodig is', dus in jou geval voor het eerst bij getResponseCode.
Beetje jammer dat uit de JavaDoc niet duidelijk blijkt wanneer nu precies de request gedaan wordt (en de gegevens dus verstuurd). Ik neem aan dat het niet met openConnection gebeurd aangezien je dan geen opties meer kan instellen. Waarschijnlijk gebeurd het 'wanneer het nodig is', dus in jou geval voor het eerst bij getResponseCode.
Zo?
code:
1
2
3
4
5
6
| URL u = new URL("http://user:pass@host.com/");
URLConnection urlConn = u.openConnection();
HttpURLConnection hURL = (HttpURLConnection)urlConn;
hURL.setRequestMethod("HEAD");
out.println("responsecode: " + hURL.getResponseCode() + "<br>\n");
out.println("responsemessage: " + hURL.getResponseMessage()); |
Een wappie is iemand die gevallen is voor de (jarenlange) Russische desinformatiecampagnes.
Wantrouwen en confirmation bias doen de rest.
Hij lijkt dat username:password@ dingetje niet te pakken. Ik krijg steeds een 401 error: Unauthorized.
Moet ik die apart setten ofzo?
Moet ik die apart setten ofzo?
Een wappie is iemand die gevallen is voor de (jarenlange) Russische desinformatiecampagnes.
Wantrouwen en confirmation bias doen de rest.
Ahhh gelukt, dat moet je encoden enzo:
code:
1
2
3
4
5
6
7
8
9
10
| URL url = new URL ("http://bedrijf.nl/index.html");
String userPassword = "user:pass";
String encoding = new sun.misc.BASE64Encoder().encode (userPassword.getBytes());
URLConnection uc = url.openConnection();
uc.setRequestProperty ("Authorization", "Basic " + encoding);
HttpURLConnection hURL = (HttpURLConnection)uc;
hURL.setRequestMethod("HEAD");
out.println("responsecode: " + hURL.getResponseCode() + "<br>\n");
out.println("responsemessage: " + hURL.getResponseMessage()); |
Een wappie is iemand die gevallen is voor de (jarenlange) Russische desinformatiecampagnes.
Wantrouwen en confirmation bias doen de rest.
Pagina: 1