[Java] POST Senden

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von rushzero, 7. Juli 2007 .

Schlagworte:
Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. 7. Juli 2007
    POST Senden

    Hi und zwar versteh ich nicht wie ich mit java formulare ausfüllen kann !

    Ich hab folgendes problem :

    ich will hierfür ICQ Invisible-Check for mobile devices ein kleines Programm schreiben aber
    wie übergebe ich diesen POST

    Code:
    Host: kanicq.ru
    User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.8.1.4) Gecko/20070515 Firefox/2.0.0.4
    Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
    Accept-Language: de-de,de;q=0.8,en-us;q=0.5,en;q=0.3
    Accept-Encoding: gzip,deflate
    Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
    Keep-Alive: 300
    Connection: keep-alive
    Referer: http://kanicq.ru/invisible/pda/?method=2
    Content-Type: application/x-www-form-urlencoded
    Content-Length: 19
     human=1&uin=2222222
    
    Wäre echt super wenn ihr mir helfen könntet
     
  2. 7. Juli 2007
    AW: POST Senden

    hi,

    darf ich dir mal ne dumme gegenfrage stellen??? willst du das mit java oder javascript machen???

    mit java musst du wissen, wie das textfeld deklariert ist:
    Code:
    ...
    <td><b>ICQ number:</b></td>
    <td><input type="text" name="uin" value="" id="uin" maxlength="11" size="12"></td>
    </tr>
    ...
    
    und dann kannst du es ansprechen. siehe dazu diesen link an.

    wenn du es nicht mit java machen willst, dann biste leider falsch. denn dann gehört das unter webtechnik.


    nice day!!!
     
  3. 7. Juli 2007
    AW: POST Senden

    Wenn ich javascript wollte hätte ich es geschrieben was Ich will java !
    Und in der Javainsel sowie JavaRanch - A Friendly Place for Java Greenhorns blick ich einfach nicht durch
     
  4. 7. Juli 2007
    AW: POST Senden

    Du musst das die Daten irgendwie speziell deklarieren wie genau weiß ich auch nicht. Ich verwend dafür immer ne Lib ich denk das es sowas sicher auch für Java gibt, dann kannst das als array übergeben und die Lib schickt das ab.
     
  5. 7. Juli 2007
    AW: POST Senden

    meine link hast du dir wohl nicht richtig angeschaut??? scroll mal die seite bis nach unten, denn dort haben die ein beispiel, wie sie eine suchmaschine ansprechen.

    try again: Galileo Computing :: Java ist auch eine Insel - index



    nice day!!!
     
  6. 7. Juli 2007
    AW: POST Senden

    Also in c++ hätte ich dafür ne Verbindung zu dem Server über nen Socket auf Port 80 hergestellt und dann folgendes gesendet:
    Code:
    POST /invisible/de/ HTTP/1.1\nHost: kanicq.ru\nKeep-Alive: 300\nConnection: keep-alive\nReferer: http://kanicq.ru/invisible/de/\nContent-Type: application/x-www-form-urlencoded\nContent-Length: 48\n\nhuman=1&uin=123456789&uin4login=&password4login=
    was dem hier entspricht:
    Code:
    POST /invisible/de/ HTTP/1.1
    Host: kanicq.ru
    Keep-Alive: 300
    Connection: keep-alive
    Referer: http://kanicq.ru/invisible/de/
    Content-Type: application/x-www-form-urlencoded
    Content-Length: 48
    
    human=1&uin=123456789&uin4login=&password4login=
    Wie man Verbindung zum Server in Java aufbaut, weiß ich nicht... aber das wäre der Post den du senden müsstet (123456789 ersetzen durch gewünschte UIN).
    Ich hoffe ich konnte helfen. Falls es tatsächlich um den Verbindungsaufbau zum Server geht vergiss diese Antwort...

    mfg thecoolman4rr
     
  7. 7. Juli 2007
    AW: POST Senden

    Code:
     
     
     // Construct data
     String data = URLEncoder.encode("key1", "UTF-8") + "=" + URLEncoder.encode("value1", "UTF-8");
     data += "&" + URLEncoder.encode("key2", "UTF-8") + "=" + URLEncoder.encode("value2", "UTF-8");
     
     // Create a socket to the host
     String hostname = "example.com";
     int port = 80;
     InetAddress addr = InetAddress.getByName(hostname);
     Socket socket = new Socket(addr, port);
     
     // Send header
     String path = "/";
     BufferedWriter wr = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream(), "UTF8"));
     wr.write("GET "+path+" HTTP/1.0\r\n");
     wr.write("Referer: blocked\r\n");
     wr.write("User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322)\r\n");
     wr.write("Connection: close\r\n");
    
     wr.write("\r\n");
     
     // Send data
     //wr.write(data);
     wr.flush();
     
     // Get response
     BufferedReader rd = new BufferedReader(new InputStreamReader(socket.getInputStream()));
     String line;
    
    du musst nur aus dem GET-Request ein POST machen..
     
  8. 16. August 2007
    AW: POST Senden

    Hi ich weiß das Thema ist schon alt aber um nochmal drauf zurück zu kommen mein Javaprogramm sieht imo so aus:
    Code:
    package cmd;
    
    import java.applet.*;
    import java.net.*;
    import java.util.Scanner;
    import java.io.*;
    
    public class YahooSeeker{
     
     public static void main(String[] args) throws IOException{
     String meineTextZeile = "";
     String dateiTextZeile = "";
     
     
    
     
     // Create a socket to the host
     String hostname = "kanicq.ru";
     int port = 80;
     InetAddress addr = InetAddress.getByName(hostname);
     Socket socket = new Socket(addr, port);
    
     
    // Host: kanicq.ru
    // User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6
    // Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
    // Accept-Language: de-de,de;q=0.8,en-us;q=0.5,en;q=0.3
    // Accept-Encoding: gzip,deflate
    // Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
    // Keep-Alive: 300
    // Connection: keep-alive
    // Referer: http://kanicq.ru/invisible/pda/?method=2
    // Content-Type: application/x-www-form-urlencoded
    // Content-Length: 19
    
    
     // Send header
     String path = "/invisible/pda/?method=2";
     BufferedWriter wr = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream(), "UTF8"));
     wr.write("POST "+path+" HTTP/1.0\r\n");
     wr.write("User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6\r\n");
     wr.write("Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5\r\n");
     wr.write("Accept-Encoding: gzip,deflate\r\n");
     wr.write("Accept-Language: de-de,de;q=0.8,en-us;q=0.5,en;q=0.3\r\n");
     wr.write("Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7\r\n");
     wr.write("Keep-Alive: 300\r\n");
     wr.write("Connection: keep-alive\r\n");
     wr.write("Referer: http://kanicq.ru/invisible/pda/?method=2\r\n");
     wr.write("Content-Type: application/x-www-form-urlencoded\r\n");
     wr.write("Content-Length: human=1&uin=3333333\r\n");
    
     wr.write("\r\n");
     
     // Send data
     wr.flush();
     
     // Get response
     try{
     BufferedReader meinLeseStream = new BufferedReader(new InputStreamReader(socket.getInputStream()));
     while(dateiTextZeile != null){
     meineTextZeile = meineTextZeile.concat(dateiTextZeile);
     System.out.println(meineTextZeile);
     meineTextZeile = "";
     dateiTextZeile = meinLeseStream.readLine();
     }
     }
     catch(IOException e){
     System.out.println(e);
     }
     }
    } 
    So jetzt gibt der mir was ganz komisches in der konsole zurück:
    Code:
    HTTP/1.0 400 Bad Request
    Server: cluster_balancer
    Date: Wed, 15 Aug 2007 21:44:52 GMT
    Content-Type: text/html
    Content-Length: 1530
    Expires: Wed, 15 Aug 2007 21:44:52 GMT
    X-Squid-Error: ERR_INVALID_REQ 0
    X-Cache: MISS from turbine0.ht-systems.ru
    Via: 1.0 turbine0.ht-systems.ru:6666 (cluster_balancer)
    Proxy-Connection: close
    
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <HTML><HEAD>
    <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=koi8-r">
    <TITLE>ïûéâëá: úÁÐÒÏÛÅÎÎÙÊ URL ÎÅ ÍÏÖÅÔ ÂÙÔØ ÄÏÓÔÁ×ÌÅÎ</TITLE>
    <STYLE type="text/css"><!--BODY{background-color:#ffffff;font-family:verdana,sans-serif}PRE{font-family:sans-serif}--></STYLE>
    </HEAD><BODY>
    <H1>ïûéâëá</H1>
    <H2>úÁÐÒÏÛÅÎÎÙÊ URL ÎÅ ÍÏÖÅÔ ÂÙÔØ ÄÏÓÔÁ×ÌÅÎ.</H2>
    <HR noshade size="1px">
    <P>
    ÷Ï ×ÒÅÍÑ ÏÂÒÁÂÏÔËÉ ÚÁÐÒÏÓÁ:
    <PRE>
    POST /invisible/pda/?method=2 HTTP/1.0
    Referer: blocked
    User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322)
    ccept-Language: de-de,de;q=0.8,en-us;q=0.5,en;q=0.3
    Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
    Keep-Alive: 300
    Referer: http://kanicq.ru/invisible/pda/?method=2
    Content-Type: application/x-www-form-urlencoded
    Content-Length: human=1&amp;uin=3333333
    
    
    </PRE>
    <P>
    ðÒÏÉÚÏÛÌÁ ÓÌÅÄÕÀÝÁÑ ÏÛÉÂËÁ:
    <UL>
    <LI>
    <STRONG>
    îÅ×ÅÒÎÙÊ ÚÁÐÒÏÓ.
    </STRONG>
    </UL>
    
    <P>
    îÅËÏÔÏÒÙÅ ÁÓÐÅËÔÙ HTTP ÚÁÐÒÏÓÁ ÎÅÐÒÁ×ÉÌØÎÙ. ÷ÏÚÍÏÖÎÙÅ ÐÒÏÂÌÅÍÙ:
    <UL>
    <LI>ïÔÓÕÔÓÔ×ÕÅÔ ÌÉÂÏ ÎÅÉÚ×ÅÓÔÅÎ ÍÅÔÏÄ ÚÁÐÒÏÓÁ (GET, POST)
    <LI>ïÔÓÕÔÓÔ×ÕÅÔ URL
    <LI>ïÔÓÕÔÓÔ×ÕÅÔ HTTP ÉÄÅÎÔÉÆÉËÁÔÏÒ (HTTP/1.0)
    <LI>úÁÐÒÏÓ ÓÌÉÛËÏÍ ×ÅÌÉË
    <LI>îÅ ÕËÁÚÁÎ Content-Length ÄÌÑ ÚÁÐÒÏÓÏ× POST ÉÌÉ PUT
    <LI>îÅÄÏÐÕÓÔÉÍÙÊ ÓÉÍ×ÏÌ × ÉÍÅÎÉ ÓÅÒ×ÅÒÁ; ÐÏÄÞ£ÒËÉ×ÁÎÉÑ ÎÅÄÏÐÕÓÔÉÍÙ
    </UL>
    </P>
    
    <BR clear="all">
    <HR noshade size="1px">
    <ADDRESS>
    Generated Wed, 15 Aug 2007 21:44:52 GMT by turbine0.ht-systems.ru (cluster_balancer)
    </ADDRESS>
    </BODY></HTML>
    
    Vllt weiß einer von euch weiter
     
  9. 16. August 2007
    AW: POST Senden

    Du uebergibst die Post-Daten falsch...

    wr.write("Content-Length: human=1&uin=3333333\r\n");

    Da muss die Laenge der Post Daten hin und dann nach 2 CRLF die Daten selbst.
     
  10. 16. August 2007
    Zuletzt von einem Moderator bearbeitet: 14. April 2017
    AW: POST Senden

    Ach stimmt ja steht ja da sogar verdammt !


    Aktuell:
    Code:
    package cmd;
    
    import java.applet.*;
    import java.net.*;
    import java.util.Scanner;
    import java.io.*;
    
    public class YahooSeeker{
     
     public static void main(String[] args) throws IOException{
     String meineTextZeile = "";
     String dateiTextZeile = "";
     
     // Create a socket to the host
     String hostname = "kanicq.ru";
     int port = 80;
     InetAddress addr = InetAddress.getByName(hostname);
     Socket socket = new Socket(addr, port);
    
     BufferedWriter wr = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream(), "UTF8"));
     wr.write("POST /invisible/pda/?method=2 HTTP/1.1\r\n");
     wr.write("Host: kanicq.ru\r\n");
     wr.write("User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6\r\n");
     wr.write("Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5\r\n");
     wr.write("Accept-Language: de-de,de;q=0.8,en-us;q=0.5,en;q=0.3\r\n");
     wr.write("Accept-Encoding: gzip,deflate\r\n");
     wr.write("Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7\r\n");
     wr.write("Keep-Alive: 300\r\n");
     wr.write("Connection: keep-alive\r\n");
     wr.write("Referer: http://kanicq.ru/invisible/pda/?method=2\r\n");
     wr.write("Content-Type: application/x-www-form-urlencoded\r\n");
     wr.write("Content-Length: 19\r\n"); 
     wr.write("\r\n");
     wr.write("&human=1&uin=3333333 \r\n");
     wr.flush();
     
     
     // Get response
     try{
     BufferedReader meinLeseStream = new BufferedReader(new InputStreamReader(socket.getInputStream()));
     while(dateiTextZeile != null){
     meineTextZeile = meineTextZeile.concat(dateiTextZeile);
     System.out.println(meineTextZeile);
     meineTextZeile = "";
     dateiTextZeile = meinLeseStream.readLine();
     }
     
    
     }
     catch(IOException e){
     System.out.println(e);
     }
    
     }
    } 
    
    Aber jetzt gibt er mir dies hier zurück:
    Code:
    
    HTTP/1.0 200 OK
    Date: Thu, 16 Aug 2007 13:08:27 GMT
    Server: Apache
    Vary: Accept-Encoding
    Content-Encoding: gzip
    Content-Type: text/html; charset=utf-8
    X-Cache: MISS from turbine0.ht-systems.ru
    Via: 1.0 turbine0.ht-systems.ru:6666 (cluster_balancer)
    Connection: close
    
    .... nur komischer zeichen ...
    Bild

    Tut mir leid wenn ich nerv aber wäre schon wichtig für mich wenn ich es verstehe...
     
  11. 16. August 2007
    AW: POST Senden

    das is gzip'd

    -> du musst es dekomprimieren
     
  12. 16. August 2007
    AW: POST Senden

    Ok danke Merci jungs ich werd BW rauschicken

    --CLOSE
     
  13. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.