• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 2225
  • Last Modified:

HTTP Post to external website form

Hi

I am busy doing investigation into HTTP Posts to other websites. I found the code below which is used for posting HTTP Data to another website form.

My question is simply:
Does this process actually trigger a Form Submit action on the external website??

Thanks
(Please note the code is just a copy from another post simply to indicate what is happening and has not been tested - the question is more theoretical)
///////////////////////////////////////////////////////////////////////////////////////////
ASCIIEncoding encoding =new ASCIIEncoding();
 
string postData  ="p1=" + "FP98";
postData +="p2="  + ordertime;
postData +="p3="  + "Shop";
 
 
byte[]  data = encoding.GetBytes(postData);
 
// Prepare web request...
HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create("https://www.aaa.com/vvonline/ccform.asp");
myRequest.Method      = "POST";
myRequest.ContentType = "application/x-www-form-urlencoded";
myRequest.ContentLength = data.Length;
Stream newStream=myRequest.GetRequestStream();
// Send the data.
newStream.Write(data,0,data.Length);
newStream.Close();

Open in new window

0
djcheeky
Asked:
djcheeky
  • 4
  • 3
1 Solution
 
schalcraftCommented:
In theory, yes, submitting forms to a remote site does work. However, if the remote site doesnt want to allow this, then they wil have taken steps to ensure it cant be done.
0
 
djcheekyAuthor Commented:
Thanks - but what I'm asking is will the code above actually trigger a Form submit action with the data provided on the remote site?
0
 
MatthiasVanceCommented:
You mean like the javascript onSubmit event?
No it doesn't get fired.

Kind regards,

Matthias Vance
0
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
djcheekyAuthor Commented:
Hi again, Let me elaborate:

The code above creates an HTTP FORM request and sends it to a remote website.

What I would like to know is whether this request that is passed via the code below is the same as someone submitting a form with the same data on the remote website?

Thanks


newStream.Write(data,0,data.Length);

Open in new window

0
 
MatthiasVanceCommented:
No it's not the same. You are only posting the data that you specify in your program. A form on a website might contain hidden fields etc.

Kind regards,

Matthias Vance
0
 
djcheekyAuthor Commented:
Yes, but if the form on the remote site is expeecting form items:
* name
* surname
* age

And I run the code executed below, passing the name,surname and age via the HTTP post request, does that yield the same result as if I had typed in those value into the HTTP form on the remote site and submitted?

Please read what I have written and try to understand it.
Thanks
string postData  ="name=John";
postData +="surname=Smith";
postData +="age=30";
 
 
byte[]  data = encoding.GetBytes(postData);
 
// Prepare web request...
HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create("https://www.aaa.com/vvonline/ccform.asp");
myRequest.Method      = "POST";
myRequest.ContentType = "application/x-www-form-urlencoded";
myRequest.ContentLength = data.Length;
Stream newStream=myRequest.GetRequestStream();
// Send the data.
newStream.Write(data,0,data.Length);
newStream.Close();

Open in new window

0
 
MatthiasVanceCommented:
Yes, it would do exactly the same.
However, you need to change your code in order for it to work correctly.

Kind regards,

Matthias Vance
' Wrong code
string postData  ="name=John";
postData +="surname=Smith";
postData +="age=30";
 
' Right code
string postData = "name=John";
postData += "&surname=Smith";
postData += "&age=30";

Open in new window

0
 
djcheekyAuthor Commented:
Aah - ok thanks - Yeah - I grabbed the code from somewhere else and I suspected it may not be perfect :)
Just wanted to know whether they yield the same effect, which they do, so thanks :)
0

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

  • 4
  • 3
Tackle projects and never again get stuck behind a technical roadblock.
Join Now