http POST action trouble with proxy |
Reply
|
|
by ArnoB [ArnoNOS at PA-Mqwise dot nl] posted on 2004/05/25 |
|
Hi. Can somebody shed some light on the http POST actions?
It took me some time before I realized that the problems I had with the proxy program related to POST actions. For example, the hotmail site froze on the 'Opening page http://login.passport.net/uilogin.srf?id=2'. It does a post using javascript to submit.
A test revealed that it was a problem. I thought I had the answer with the 'use http 1.1 through proxy connections' advanced property of IE but some websites still don't work. Hotmail homepage does load now (except the center banner jpeg)
I'm lost for the moment. I don't understand why nobody else has this problem.
Using IE 6 sp1 on windows XP (and 2000)
Anyone?
tia,
Arno
(by the way the note on the newpost page is a bit simpel:
* = in order to reduce SPAM, all email addresses will be converted into a format that cannot be spidered by spambots. I.e. 'my@email.com' becomes 'my at email dot com'.
Perhaps I'm overestimating those criminals but I think they 'adapted' a few years ago. I understood the pro's do even bitmap ocr scanning) |
by Arno [ArnoNOS at PA-Mqwise dot nl] posted on 2004/05/25 |
Reply |
to be complete, hereby the testpage I used. ASP but saved as htm the forms should work on non IIS too.
2 forms, post and submit. Containing an userfield and a submit button.
submit action to itself
It display's all post parameters and the get parameter.
Testform.asp:
<HTML><TITLE>Dump post</TITLE>
<BODY>
<% RANDOMIZE() %>
POST form:<br>
<FORM action="" method=POST id=form1 name=form1>
POSTfield1<INPUT TYPE=TEXT SIZE=15 NAME=POSTFIELD1 VALUE='<% = RND() %>'>
<INPUT TYPE=SUBMIT id=SUBMIT1 name=SUBMIT1>
<hr>
</FORM>
GET form:<br>
<FORM action="" method=GET id=form1 name=form1>
GETfield1<INPUT TYPE=TEXT SIZE=15 NAME=GETFIELD1 VALUE='<% = RND() %>'>
<INPUT TYPE=SUBMIT id=SUBMIT1 name=SUBMIT1>
</FORM>
<hr>
<b>Results</b><br>
POST vars:<br>
<TABLE BORDER=1>
<TR><TD VALIGN=TOP><B>Variable</B></TD><TD VALIGN=TOP><B>FormValue</B></TD></TR>
<% For Each key in Request.Form %>
<TR>
<TD><% = key %></TD>
<TD>
<%
if Request.Form(key) = "" Then
Response.Write " " ' To force border around table cell
else
Response.Write Request.Form(key)
end if
%>
</td>
</TR>
<% Next %>
</TABLE>
<br>var 'GETfield1' = <% = request("GETfield1") %><br>
</BODY></HTML> |
by Gregory [gregory at fudes dot be] posted on 2004/06/04 |
Reply |
i have the same problem. The proxy does not seem to function with POST forms :-(
Has anybody found a workaround or another solution? |
by Gregory [gregory at fudes dot be] posted on 2004/06/04 |
Reply |
Found the solution.
There this code in HttpClient.cs
int length = int.Parse((string)HeaderFields["Content-Length"]);
return Query.Length >= index + 6 + length;
Which, i think, incorrectly adds 6 where it should add 4. Anyway, i kind of just completely commented it and replaced it by:
return true;
and now it works :) |
by brad posted on 2004/06/30 |
Reply |
I discovered this problem as well. One of the reasons I was reading this forum was to see why 6 was being used when it made sense to use 4, to account for the 4 seperator characters in the string "\r\n\r\n". I feel better knowing I am not the only one that was having that problem. |
by Boyd posted on 2005/04/26 |
Reply |
I can confirm it should be 4 not 6.
|
by slyther posted on 2006/12/07 |
Reply |
the change to 4, plus adding "ClientSocket.UseOnlyOverlappedIO = true;" before each "ClientSocket.BeginReceive(.." AND setting HTTP 1.1 through proxy in IE advanced settings, whew, not it works a treat will all the sites I visit (and all the ones I manage),
thanks guys..
|