<wininet> senden von Daten wird vom Proxy nicht als solches erkannt (Timeout legt die Verbindung auf)



  • Hallo zusammen,
    ich benutze die "wininet.dll"

    und sende meine Daten wie folgt:

    // Wenn die Verbindung ueber ein Proxy geht
    hInet = InternetOpen(NULL, INTERNET_OPEN_TYPE_PRECONFIG, asPROXY.c_str(), asPROXYPORT.c_str(), 0);
    ....
    
    	hConn = InternetConnect(hInet, asSERVER.c_str(), iPORT, "", "", INTERNET_SERVICE_HTTP, 0, 0);
    		asURL = asURL + "?strPass=" + sPasswort + "&strUser=" + asUser;
    		hReq = HttpOpenRequest(hConn, "POST", asURL.c_str(),                                                NULL,
    									  NULL,  NULL,   INTERNET_FLAG_KEEP_CONNECTION |INTERNET_FLAG_TRANSFER_BINARY, 0);
    		bSend = HttpSendRequest(hReq, asHeader.c_str(), strlen(asHeader.c_str()), asPostData.c_str(),
    										strlen(asPostData.c_str()));
    
    ...
    

    Es funktioniert alles, die Daten kommen auch an (vorrausgesetzt ich habe einen timeout im Proxy, welcher hoch genug ist.)
    Wenn ich meinen timeout z.B. auf 60 Sekunde setze (die Daten brauchen erheblich laenger) legt genau nach der Zeit der Proxy auf.

    Es wird aber permanent etwas auf der Leitung gesendet, d.h. der timeout dürfte nicht kommen.

    Was mache ich falsch ????

    Vielen, vielen Dank



  • 🙄



  • Vermutlich ignoriert der Proxy INTERNET_FLAG_KEEP_CONNECTION einfach 😉
    Zudem haben viele Webserver speziell bei Skript-Aufrufen festgelegte Timeouts...


Log in to reply