2009-03-11 1 views
2

Ich versuche, Daten an eine externe URL mit HttpWebRequest zu senden, dann muss ich den Benutzer auf die externe URL wo ich gerade meine Daten POSTed, kann dies auf der ersten Stelle erreicht werden?Umleiten zu POST HttpWebRequest

Antwort

0

Wenn auf der Serverseite nichts zu tun ist, sollten Sie dies wahrscheinlich von JS auf der Client-Seite tun.

Senden Sie einfach ein Formular mit JS programmatisch, das sowohl für die Buchung als auch für die Weiterleitung zuständig ist.

3

Nun, die Umleitung sollte ziemlich Standard sein - nur eine regelmäßige ASP.NET redirect.

Re macht einen POST; das ist in Ordnung - aber es wäre noch einfacher, nur WebClient verwenden:

using (WebClient client = new WebClient()) 
    { 
     client.UploadData(address, "POST", data); 
    } 

(andere Methoden und Überlastungen für verschiedene Anwendungsfälle)

+0

vielen Dank für den Vorschlag WebClient, wird es Redirect durchführen? –

+0

Sie müssten versuchen, tut mir leid. Ich weiß es nicht von ganz oben. –

+0

AllowAutoRedirect: http://msdn.microsoft.com/en-us/library/system.net.httpwebrequest.allowautoredirect(VS.80).aspx –

0

Klar, das ist durchaus möglich.

Je nachdem, welche Daten Sie veröffentlichen müssen, ist die System.Net.WebClient-Klasse möglicherweise einfacher als die HttpWebRequest. Es kann Strings und Dateien mit einem Methodenaufruf hochladen.

0

Der einfachste Weg, dies zu tun, wäre nur die Form der action-Attribut zu setzen:

<form method="post" action="url/to/post/data/to"> 
.... 
</form> 

Dann werden die Daten und der Benutzer wird zu Ihrer URL gesendet werden, ohne dass Sie etwas programmatisch zu tun.