Hallo zusammen,
ich kenne mich mit folgendem nicht so gut aus und hoffe, dass man versteht was ich meine:
Ich würde gerne auf eine Seite zugreifen bei der man sich über Basic Authentication anmelden muss. Wenn man die richtigen Login-Daten eingibt erscheint im Browser eine .json Datei. Diese würde ich dann gerne auslesen.
Mein bisheriger Code sieht folgendermaßen aus:
Der ein oder andere Teil ist wahrscheinlich überflüssig - habe ich aber zum Probieren genutzt.
Ich bekomme einen Fehler bei der letzten Zeile:
Wie schon erwähnt habe ich leider nicht so viel Erfahrung damit.
Ich arbeite mit der Apache HttpClient Library (http://hc.apache.org/downloads.cgi)
Würde mich sehr über Anregungen und Tipps freuen!
Vielen Dank schonmal.
Gruß
Patrick
ich kenne mich mit folgendem nicht so gut aus und hoffe, dass man versteht was ich meine:
Ich würde gerne auf eine Seite zugreifen bei der man sich über Basic Authentication anmelden muss. Wenn man die richtigen Login-Daten eingibt erscheint im Browser eine .json Datei. Diese würde ich dann gerne auslesen.
Mein bisheriger Code sieht folgendermaßen aus:
Java:
public class Connection {
public static void main(String[] args) throws IOException, URISyntaxException{
String benutzername = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
String passwort = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
String identnr = "R901358810_B7_933";
UsernamePasswordCredentials creds = new UsernamePasswordCredentials(benutzername, passwort);
System.out.println("User: "+creds.getUserPrincipal().getName());
System.out.println("Password: "+creds.getPassword());
String authString = benutzername + ":" + passwort;
System.out.println("auth string: " + authString);
byte[] authEncBytes = Base64.encodeBase64(authString.getBytes());
String authStringEnc = new String(authEncBytes);
System.out.println("Base64 encoded auth string: " + authStringEnc);
URI uri = new URIBuilder()
.setScheme("https")
.setHost("xxxxxxxxxxxxxxxxxxx.com")
.setPath("/api/v1/exemplar/serialnumber")
.setParameter("identnumber", identnr).build();
CloseableHttpClient httpclient = HttpClients.createDefault();
HttpGet httpGet = new HttpGet(uri);
System.out.println(httpGet.getURI());
HttpResponse response = new BasicHttpResponse(HttpVersion.HTTP_1_1,
HttpStatus.SC_OK, "OK");
System.out.println(response.getProtocolVersion());
System.out.println(response.getStatusLine().getStatusCode());
System.out.println(response.getStatusLine().getReasonPhrase());
System.out.println(response.getStatusLine().toString());
System.out.println(
Request.Get(uri)
.connectTimeout(1000)
.socketTimeout(1000)
.execute().returnContent().asString());
}
}
Ich bekomme einen Fehler bei der letzten Zeile:
Java:
Request.Get(uri)
.connectTimeout(1000)
.socketTimeout(1000)
.execute().returnContent().asString()
Ich arbeite mit der Apache HttpClient Library (http://hc.apache.org/downloads.cgi)
Würde mich sehr über Anregungen und Tipps freuen!
Vielen Dank schonmal.
Gruß
Patrick