Webseiten aufrufen



  • Weis jemand wie man eine Webseite aufrufen kann ohne dass ein browser geöffnet wird?

    Hintergrund:
    Ich muss einer Webseite einen Parameter übergeben um bestimmte Aktionen auszulösen. Als "Antwort" kommt im Prinzip nichts (leere) Seite zurück, die mich eingentlich nicht interressiert.
    Das ganze würde mit Browser ja einfach das aufrufen der URL: [url]http://localhost/test.php?parameter=xbeliebig
    [/url]
    bedeuten...



  • nur so als idee neben java (aber da gehts genauso)

    ein stück php aus dem uralt faq von köhntopp, wo er postvariablen über einen offenen socket an eine seite schickt.

    wissen musst du jedoch, ob es post oder get ist.

    hier siehst du ein beispiel für die form, die du senden musst.

    #! ./php -q
    <?php
    
    function PostToHost($host, $path, $referer, $data_to_send) {
      $fp = fsockopen($host,80);
      printf("Open!\n");
      fputs($fp, "POST $path HTTP/1.1\n");
      fputs($fp, "Host: $host\n");
      fputs($fp, "Referer: $referer\n");
      fputs($fp, "Content-type: application/x-www-form-urlencoded\n");
      fputs($fp, "Content-length: ".strlen($data_to_send)."\n");
      fputs($fp, "Connection: close\n\n");
      fputs($fp, "$data_to_send\n");
      printf("Sent!\n");
      while(!feof($fp)) {
          $res .= fgets($fp, 128);
      }
      printf("Done!\n");
      fclose($fp);
    
      return $res;
    }
    
    $data = "pid=14&poll_vote_number=2";
    
    printf("Go!\n");
    $x = PostToHost(
                  "www.linux.com",
                  "/polls/index.phtml",
                  "http://www.linux.com/polls/index.phtml?pid=14",
                  $data
    );
    


  • Baue über per Socket(die Klasse) eine Verbindung zum host auf dem Port 80 auf und sende das Kommando an den Server.

    Z.B. so:

    Socket socket = new Socket("http://www.c-plusplus.net", 80);

    BufferedWriter out = new BufferedWriter(new OutputputStreamWriter(socket.getOutputStream());

    out.write("GET /forum/index.php\n\r");

    So in der Art. Ich weis jetzt nich genau wie das mit dem Constructor von Socket is oder ob es die Klasse OutputStreamWriter überhaupt existiert. Aber so ähnlich müsste das gehen, guck dir einfach die Doc an.



  • Entschuldigung für meine Wortwiederholungen und für die anderen überflüssugen Wörter bei "über per" z.B.. War etwas verwirrt. 😉



  • Supi, hört sich gut an, werde das mal näher verfolgen 🙂 👍


Anmelden zum Antworten