fb:porticula NoPaste
HTTP_Get über proxy
Uploader: | ThePuppetMaster |
Datum/Zeit: | 09.01.2008 05:47:33 |
'##############################################################################################################
'TEST-CLIENT für TSNE Version 2 HTTP aufruf über einen HTTP-PROXY-Server
'##############################################################################################################
'TSNE_V2 Includieren
#include once "../TSNE_V2/TSNE_V2.bi"
'Die empfängerroutinen festlegen.
'Da wir einen direkten aufruf ausführen, und dort mit TSNE_WaitClose warten
'brauchen wir keien Disconnect Emänger-Routine
Declare Sub TSNE_Connected (ByVal V_TSNEID as UInteger)
Declare Sub TSNE_NewData (ByVal V_TSNEID as UInteger, ByRef V_Data as String)
'Die Parametervariablen der Anfrage (kann man natürlich auch kürzen. und direkt im request angeben
Dim Shared Proxy_Server as String
Dim Shared Proxy_Port as UShort
Dim Shared Request_Server as String
Dim Shared Request_Path as String
Dim Shared Request_Data as String
'Den Request und deren Proxy definieren
Proxy_Server = "192.168.0.1"
Proxy_Port = 3128
Request_Server = "www.google.de"
Request_Path = "/index.html"
'Verbindung aufbauen
Print "Verbindugn wird aufgebaut... "
Dim G_Client as UInteger
Dim BV as Long
BV = TSNE_Create_Client(G_Client, Proxy_Server, Proxy_Port, 0, @TSNE_Connected, @TSNE_NewData)
If BV = 0 Then
'und bei erfolgreichem aufbau auf das ende der Verbindung warten.
TSNE_WaitClose(G_Client)
Print "Verbindung beendet!"
Else: Print "[FEHLER] " & TSNE_GetGURUCode(BV)
End If
'Den Header der Antwort abschneiden, wenn er esistiert, und ausgeben
If Request_Data <> "" Then
BV = InStr(1, Request_Data, Chr(13) & Chr(10) & Chr(13) & Chr(10))
If BV > 0 Then Request_Data = Mid(Request_Data, BV + 4)
Print "=== Empfangene Daten ==="
Print Request_Data
End if
'Programm beenden.
End
'Die Verbindugnbesteht.
Sub TSNE_Connected(ByVal V_TSNEID as UInteger)
Print "Sende anfrage..."
Dim D as String
Dim CRLF as String
CRLF = Chr(13) & Chr(10)
'Anfrage zusammenstellen
D = D & "GET HTTP://" & Request_Server & Request_Path & " HTTP/1.0" & CRLF
D = D & "Proxy-Connection: close" & CRLF
D = D & "User-Agent: TSNE_V2_Proxy Test" & CRLF
D = D & "Host: " & Request_Server & CRLF
D = D & CRLF
'und zum Proxy senden
TSNE_Data_Send(V_TSNEID, D)
End Sub
'Neue Daten an Variablen anhängen.
Sub TSNE_NewData (ByVal V_TSNEID as UInteger, ByRef V_Data as String)
Print "Empfange Daten..."
Request_Data += V_Data
End Sub