# URLConnection mit lg/pw



## uppss (8. Dez 2014)

Liebes Forumteam,

ich habe nicht viel Erfahrung, deswegen frage ich hier lieber.
Ich versuche XML vom Server abzufragen, deswegen habe ich ein Connector implementiert, funktioniert aber nicht, wie ich mir vorgestellt habe.

Wie kann ich die Zugangsdatten: login/pw hinzufügen.


```
import java.io.ByteArrayOutputStream;
import java.io.InputStream;
import java.net.URL;
import java.net.URLConnection;

import javax.swing.JOptionPane;

public class Main1 {

	public static void main(String[] args) {

		System.out.println("Url Connection Start...");
		try {
			 
			 // Verbindung aufbauen
			 URL url = new URL("http://11.111.111.111:1234/resultdata-stocklist_get?prodno=1111111&isid=111");
			 URLConnection connection = url.openConnection();
			 
			 // XML Daten einlesen
			 ByteArrayOutputStream result = new ByteArrayOutputStream();
			 InputStream input = connection.getInputStream();
			 byte[] buffer = new byte[1000];
			 int amount = 0;    
			 
			 // Inhalt lesen
			 while(amount != -1){
			 
			   result.write(buffer, 0, amount);
			   amount = input.read(buffer);
			 
			 }
			 
			 }catch(Exception e){
			 // Fehlermeldung
			 JOptionPane.showMessageDialog(null,"Es konnte keine Verbindung mit dem Internet hergestellt werden. Ist ein Proxy nötig?","Verbindungsproblem",JOptionPane.ERROR_MESSAGE);
			 }
		System.out.println("Url Connection ENDE...");

		
	}
}
```


----------



## uppss (8. Dez 2014)

uppss hat gesagt.:


> ```
> ...			 // Verbindung aufbauen
> URL url = new URL("http://[B]login:password[/B]@11.111.111.111:1234/resultdata-stocklist_get?prodno=1111111&isid=111");
> ...
> ...



Kann ich die Zugangsdaten so eingeben?


----------



## dzim (8. Dez 2014)

Eher nicht. Basic Authentication nehme ich an? Dann musst du es im Header des HTTP-GET mitsenden.

Ganz allgmein:
Sending HTTP Header Info with Java UrlConnection - Stack Overflow

Etwas genauer (der Code des Fragenden sieht soweit ok aus):
java - HTTP Basic Authentication With URLConnection - Stack Overflow
oder:
java - Preemptive Basic Auth with HttpUrlConnection? - Stack Overflow
...

Auch wenn damit mitunter vielleicht etwas Overheader eingespart werden kann, verwende ich für HTTP-Basisoperation lieber entsprechende Libs (bei denen man natürlich auch gern die Header konfigrieren, bis der Arzt kommt). Früher war das Apache HTTP Client, dann Apache HTTP Components, jetzt aber eher OkHttp. Alles OpenSource. Die Erste war/ist in ihrer vergleichbaren Uralt-Fassung teil vom Android SDK und wird gerade durch das Dritte abgelöst (seit dem 5er Preview glaube ich).


----------

