http_proxy(STRING* proxy,var port)

Setzt einen http-proxy-Server für die Internetverbindung. Wird kein proxy verwendet, muß diese Funktion nicht aufgerufen werden.

http_post(STRING* url, STRING* data)

Sendet http-Daten mit der "post"-Methode an einen Web-Server und liefert eine httpID zurück. Mithilfe dieser httpID läßt sich die Übertragung über Funktionen wie http_status kontrollieren. Müssen keine Daten gesendet werden, kann NULL für den data-String übergeben werden. Nachdem das Senden abgeschlossen ist, muß die httpID per http_free freigesetzt werden.

http_status(var httpid)

Liefert Informationen über eine http-Übertragung zurück:

2 Verbindungsproblem
1 Daten wurden empfangen
0 Warten auf Daten vom Server
-1 ungültige httpID

http_result(var httpid, STRING* result)

Speichert die empfangenen Daten einer http-Übertragung im result-String und liefert die Länge der empfangenen Daten zurück.

http_free(var httpid)

Setzt die httpID einer http-Sendung frei und stropt die Übertragung. Muß nach jedem http-Senden aufgerufen werden.

Parameter:

proxy - proxy-Server (Beispiel: "proxy-host.com"), STRING* oder char*.
port - Port des proxy-Servers (example: 8080).
url - url des Web-Servers (Beispiel: "http://www.testserver.com/svlist.php"), STRING* oder char*
data - String der die zu sendenden Daten enthält (Beispiel: "svname=gameserver&players=16&pw=yes"), STRING*, char*, oder NULL.
result - STRING*, der das Ergebnis der http-Sendeoperation empfangen soll.
httpid - httpID der Übertragung, zurückgeliefert durch http_post().

Bemerkungen:

Version:

A7.84  P  LC

Beispiel:

#include <acknex.h>
#include <default.c>
#include <acknet.h>

STRING* ip_str = "";

// start the script "ip.php" on a remote server, and return the caller's IP address
function main()
{
   var id = http_post("http://coniserver.net/scratch/ip.php",NULL);
   while (!http_status(id)) 
     wait(1);//wait for the server to reply
   if (http_status(id) == 1) { //transfer successful?
     http_result(id,ip_str);   //get the replied IP
     printf(_chr(ip_str));
  } else
     error("Error during transfer!");
  http_free(id); //always cleanup the httpid!
  sys_exit(NULL);
}

ip.php:
<?
$ip ="$REMOTE_ADDR";
echo "Your IP: $ip";
?>

Siehe auch:

ftp functions

► latest version online