HTTP POST Connect

Chatman

Mitglied
Hallo zusammen,

bitte um Hilfestellung: Leider schaffe ich keine Http-Login (POST) mittels folgendem Programm:


Java:
package Netzwerk;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;
import java.util.Scanner;

public class Post 
{
	
	public static void main( String... args ) throws Exception
	{
	  String body = "user" + URLEncoder.encode( "userXXX", "UTF-8" ) + "&" +
      "pass" + URLEncoder.encode( "passXXX", "UTF-8" );
  
	  URL url = new URL( "http://www.ringschuh.at/login.html" );

	  HttpURLConnection connection = (HttpURLConnection) url.openConnection();
	  connection.setRequestMethod( "POST" );
	  connection.setDoInput( true );
	  connection.setDoOutput( true );
	  connection.setUseCaches( false );
	connection.setRequestProperty( "Content-Type","application/x-www-form-urlencoded" );
	connection.setRequestProperty( "Content-Length", String.valueOf(body.length()) );
	
	OutputStreamWriter writer = new OutputStreamWriter( connection.getOutputStream() );
	writer.write( body );
	System.out.println( body );
	writer.flush();
	
	
	BufferedReader reader = new BufferedReader(
	                  new InputStreamReader(connection.getInputStream()) );
	
	for ( String line; (line = reader.readLine()) != null; )
	{
	System.out.println( line );
	}
	
	writer.close();
	reader.close();
	}
}

Vielen Dank!
 

FArt

Top Contributor
Danke für die Antwort - möchte allerdings dieses Problem ohne eine Apache Server Installation lösen....
Ich habe dir mit einem Link mehrere Hilfestellungen gegeben:
1.) Du sieht, dass man über Google und Foren viel finden kann. Einfach loslegen ist eher suboptimal.
2.) Du wurdest mit sinnvollen Suchbegriffen für eine Google-Suche ausgestattet, falls es bisher daran scheiterte
3.) Du siehst eine Beispielimplementierung
4.) Die Beispielimplementierung verwendet eine API (das ist ein wichtiger Tipp!)
5.) ...

Mir fällt noch mehr ein. Das ist somit besser als ein Überraschungsei... so viele Hinweise... mit nur einem Link...
 

Chatman

Mitglied
Leider habe ich Probleme beim import der angeführten .jar Files.
(Googeln brachte mich nicht weiter..:rtfm:)

Folgende Imports funktionieren:
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;

Bei folgenden Imports werden Fehler angezeigt.(HttpComponents - Apache HttpComponents sind installiert)
import org.apache.commons.httpclient.*;
import org.apache.commons.httpclient.cookie.CookiePolicy;
import org.apache.commons.httpclient.cookie.CookieSpec;
import org.apache.commons.httpclient.methods.*;

Sämtliche jar Files wurden installiert und werden im Java Build Path angezeigt
-> Java Build Path - Add Library - User Library - Add JARs!

Fehlermeldung: Import can not be resolved!;(
 

EdelStoff

Mitglied
Du musst noch die benötigten Lib's deinem Build Path hinzufügen.

Java Build Path -> Add External Jars -> Die benötigten .jar Dateien aus dem lib Ordner von dem heruntergeladenem Archive auswählen
 

Chatman

Mitglied
Das hab ich bereits durchgeführt - Import-Anweisungen werden leider nicht erkannt ???
(ich kann hier leider keine Grafik anfügen!)

Im Ordner Libraries sind nun sämtliche LIBS vorhanden + wie von EdelStoff vorgeschlagen Add External Jars hinzugefügt!
 
M

maki

Gast
Der Code passt nicht zur HttpClient Version.

Suche dir ein Beispiel zur der Version die du nutzt ;)
 

Chatman

Mitglied
Hab mich jetzt einige Tage mit der Apache HttpClient Tutorial Doku beschäftigt. Sehr interessant. Leider schlägt mein Login auf dieser Seite immer noch fehl (Google funktioniert bereits :)) Mein Hauptproblem dürfte sein keinen Aussagekräftigen Response zu erhalten um weiter anhand einer Fehlermeldung analysieren zu können....

Wer hat da Erfahrung ?

Als Response wird immer 200 ausgegeben obwohl die Anmeldung fehl schläft:

HTTP/1.1
200
OK
HTTP/1.1 200 OK




Java:
public class Ringschuh_Test {
	public static void main(String[] args) {
		
		HttpClient client = new DefaultHttpClient();
		HttpPost post = new HttpPost("http://www.ringschuh.at/login.html");

		try {
			// HTTP POST
			List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(1);
			nameValuePairs.add(new BasicNameValuePair("user", "XXXXX"));
			nameValuePairs.add(new BasicNameValuePair("pass", "YYYYY"));
			nameValuePairs.add(new BasicNameValuePair("submit", "Anmelden"));
			System.out.println(nameValuePairs);
			post.setEntity(new UrlEncodedFormEntity(nameValuePairs));
			
			HttpResponse response = client.execute(post);
			HttpEntity entity = response.getEntity();

			if (entity != null) {
			long len = entity.getContentLength();
			if (len != -1 && len < 2048) {
			System.out.println(EntityUtils.toString(entity));
			
			
			} else {
				// Ergänzen
			}
			
			System.out.println(response.getProtocolVersion());
			System.out.println(response.getStatusLine().getStatusCode());
			System.out.println(response.getStatusLine().getReasonPhrase());
			System.out.println(response.getStatusLine().toString());
		
			BufferedReader rd = new BufferedReader(new InputStreamReader(response.getEntity().getContent()));
			
						
			String line = "";	
			
			while ((line = rd.readLine()) != null) {
				System.out.println(line);
				
				if (line.startsWith("Auth=")) {
					String key = line.substring(5);
					// 
				}
			}
			}
		}
			 catch (IOException e) {
			e.printStackTrace();
		}
	}
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
F http Post auf einen Grafana Server Netzwerkprogrammierung 3
S HTTP Post?!? - Java Server Netzwerkprogrammierung 7
nrg FileUpload HTTP POST Netzwerkprogrammierung 5
C HTTP Studienarbeit Kommunikation via HTTP mit POST zwischen Server und Client Netzwerkprogrammierung 7
M Http POST liefert kryptischen Content Netzwerkprogrammierung 4
B Wie HTTP GET/POST Anfrage versenden? Netzwerkprogrammierung 7
E upload progress bei einem http file post Netzwerkprogrammierung 5
M erst POST dann Http-Request über URLConnection Netzwerkprogrammierung 3
J HTTP-POST-Request mit Anhang über Socket Netzwerkprogrammierung 2
B totale HTTP/1.0 Verwirrung bei POST Netzwerkprogrammierung 5
H Datei mit Anhang via http "hochladen" Netzwerkprogrammierung 16
R Anfängerbeispiel: Suche Java-Anwendung die http-Anfragen in Tomcat liest Netzwerkprogrammierung 8
O HTTP Wer hilft mit meinem UTF-8 http Request ? Netzwerkprogrammierung 1
G localhost im Backend https vs. http Netzwerkprogrammierung 9
J Simple HTTP Framework (basierend auf expressjs) Netzwerkprogrammierung 1
M HTTP Http requests aufzeichnen Netzwerkprogrammierung 2
J HTTP [Java 9] Neuer HTTP Client - Tutorial Netzwerkprogrammierung 3
J HTTP Befehl via HTTP senden ohne Browser öffnen Netzwerkprogrammierung 3
F HTTP HTTP Rest Client mit TLS1.2 und selbst signiertem Zertifikat Netzwerkprogrammierung 2
M http request and response Netzwerkprogrammierung 0
M Verbindungszeit berechnen (TCP, HTTP/1.0, HTTP/1.1) Netzwerkprogrammierung 2
P HTTP Bild von einem Server per http kopieren Netzwerkprogrammierung 1
U HTTP XML vom Server abholen oder http Abfragen, Entscheidung treffen Netzwerkprogrammierung 0
P HTTP Server / Client Netzwerkprogrammierung 1
S HTTP-Requeste von Browser mit Java sniffen? Netzwerkprogrammierung 9
E HTTP java.lang.IllegalArgumentException: protocol = http host = null Netzwerkprogrammierung 1
M Server mit HTTP Netzwerkprogrammierung 9
H Sockets oder HTTP- Methoden? Netzwerkprogrammierung 3
B Socket HTTP-Request führt zu Endlosschleife Netzwerkprogrammierung 5
D HTTP nochne frage zu http requests Netzwerkprogrammierung 6
D HTTP Bräuchte hilfe mit Http Requests Netzwerkprogrammierung 6
K HTTP Eigener Http Response für Datei-Download Netzwerkprogrammierung 4
D Server Client Verbindung - Unexpected End of File - Invalid HTTP Response Netzwerkprogrammierung 4
F HTTP HTTP-Download: Dateien in einem Verzeichnis ermitteln Netzwerkprogrammierung 8
T HTTP Einen HTTP Server erstellen Netzwerkprogrammierung 20
N Problem über http eine Datei zu senden Netzwerkprogrammierung 4
Dit_ HTTP Einfache HTTP-Anfrage Netzwerkprogrammierung 6
T Socket Java HTTP-Proxy Netzwerkprogrammierung 3
A HTTP Zugriff auf http-Server - Error 400 Netzwerkprogrammierung 11
B HTTP JSESSIONID in Http(s)URLConnection loswerden! Netzwerkprogrammierung 13
E Socket HTTP-Server Netzwerkprogrammierung 6
D HTTP Java HTTP Kommunikation Netzwerkprogrammierung 9
R HTTP Apache HTTP Client: Request mit angehängter Datei Netzwerkprogrammierung 2
O Http request Netzwerkprogrammierung 7
Tobse HTTP ServerSocket HTTP Netzwerkprogrammierung 4
I HTTP Datei Uploaden mit http und Sprache anpassen Netzwerkprogrammierung 7
I Socket HTTP Nachrichten über Sockets verschicken Netzwerkprogrammierung 2
N Http Client Netzwerkprogrammierung 3
W Asynchroner HTTP Client / non-blocking I/O Netzwerkprogrammierung 2
R HTTP Problem bei Authentifizierung über (Http)UrlConnection Netzwerkprogrammierung 2
L Body eines http Request auslesen Netzwerkprogrammierung 2
T HTTP Encoding von Http-Streams Netzwerkprogrammierung 2
K Ende eines HTTP Response/Request Netzwerkprogrammierung 6
D http request Netzwerkprogrammierung 11
Kr0e Simpler HTTP Stream server Test Netzwerkprogrammierung 3
K HTTP-Anfrage an einen Server wird nicht beantwortet Netzwerkprogrammierung 3
J org.apache.http.auth.NTCredentials Netzwerkprogrammierung 2
W Problem mit HTTP-Dateiübertragung Netzwerkprogrammierung 6
A org.apache.commons http client in Netbeans einbinden Netzwerkprogrammierung 3
G Http Client mit Redirect Enabled Netzwerkprogrammierung 2
G Sockets und HTTP: Ende des Datenempfangs erkennen Netzwerkprogrammierung 3
R HTTP Server Memory Leak? Netzwerkprogrammierung 6
G HTTP-Request InputStream-Problem Netzwerkprogrammierung 5
K optimale HTTP Downloads Netzwerkprogrammierung 15
G auf http-request antworten. Netzwerkprogrammierung 3
I http sniffer gesucht Netzwerkprogrammierung 10
G Socket + HTTP Header Netzwerkprogrammierung 2
R HTTP ServerThread Netzwerkprogrammierung 4
J HTTP GET? Netzwerkprogrammierung 6
C FTP vs HTTP Netzwerkprogrammierung 10
M HTTP-Response extrem fragmentiert Netzwerkprogrammierung 4
W HTTP-Upload Netzwerkprogrammierung 2
M HTTP response code: 401 ; ?aber im browser ist es abrufbar? Netzwerkprogrammierung 5
L Java HTTP Request Netzwerkprogrammierung 3
O Axis2 erstellt HTTP/1.1 anstatt HTTP/1.0 Netzwerkprogrammierung 3
B Fehler 401 bei http GET Netzwerkprogrammierung 2
S HTTP Request erstellen Netzwerkprogrammierung 2
B lange Strings in http-Request? Netzwerkprogrammierung 3
K http-download Netzwerkprogrammierung 12
I Apache http-client: Problem beim Proxyaufruf Netzwerkprogrammierung 2
m@nu Ende von Stream bei HTTP-Request Netzwerkprogrammierung 3
M RMI over HTTP Netzwerkprogrammierung 5
M HTTP Requests verarbeiten und Response senden mit Java Netzwerkprogrammierung 14
G HTTP Response mit Transfer-Encoding:chunked einlesen Netzwerkprogrammierung 4
D HTTP Request erstellen (Form Name übergeben!) Netzwerkprogrammierung 3
J Java Programm für Upload von Dateien per HTTP Netzwerkprogrammierung 7
L http kommunikation mit und ohne multipart Netzwerkprogrammierung 4
L file upload / download über http Netzwerkprogrammierung 5
G HTTP Client :: Komme nicht über den Proxy Netzwerkprogrammierung 7
P Easy Http Request Netzwerkprogrammierung 9
B non US-ASCII Dateinamen über HTTP? Netzwerkprogrammierung 2
N Dateigröße einer Datei auf einem HTTP-/Web-Server. Netzwerkprogrammierung 9
P File von http-Server kopieren Netzwerkprogrammierung 5
G unvollständige Daten: Http Client-Server-Kommunikation Netzwerkprogrammierung 2
G http 1.1 socket? Netzwerkprogrammierung 3
S http Server selber schreiben Netzwerkprogrammierung 5
S Suche API für einfachen HTTP-Zugriff. Netzwerkprogrammierung 17
Z HTTP Request Netzwerkprogrammierung 3
A http request per socket an apache server Netzwerkprogrammierung 5
M Ein HTTP-request aus Java heraus senden Netzwerkprogrammierung 3

Ähnliche Java Themen

Neue Themen


Oben