Wie sende ich einer URL mit Query Strings als Abfrage-String
Mache ich einen redirect von einer Seite auf die andere und noch eine Umleitung von der zweiten Seite zu einem Drittel. Ich habe imformation von der ersten Seite verwendet wird und nicht auf der zweiten Seite muss aber übertragen auf die Dritte Seite. Ist es möglich, senden Sie die URL von der Dritten Seite mit Query-Strings als Abfrage-String auf der zweiten Seite. Hier ist ein Beispiel:
Response.Redirect("MyURL1?redi=MyURL2?name=me&ID=123");
Mein problem ist, dass die URL gesendet werden als Query-String hat zwei Query-String-Variablen, also wie soll das system wissen, dass das, was nach dem & ist die zweite variable, die zweite URL und nicht eine zweite variable, von der ersten URL? Danke.
- Haben Sie sich überlegt mit Hilfe von Session-Variablen für das ?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Müssen Sie codieren der url, die Sie übergeben, die als parameter in der Umleitungs-URL. Wie diese:
Dadurch wird eine korrekte url ohne das doppelte '?' und '&' - Zeichen:
Siehe MSDN: HttpServerUtility.UrlEncode-Methode
Extrahieren Ihre Umleitungs-url aus dieser verschlüsselte url, die Sie verwenden müssen
HttpServerUtility.UrlDecode
verwandeln es in eine korrekte url wieder.HttpServerUtility.UrlDecode
dass Sie erwähnen, ist erreichbar über dieHttpContext.Current.Server.UrlDecode
oder nurServer.UrlDecode
in webforms. Sie können auch die statischeHttpUtility.UrlDecode
.Ihre Abfrage-string sollte so Aussehen:
Check: http://en.wikipedia.org/wiki/Query_string
Sollten Sie eine haben ? anmelden und alle Parameter, verbunden mit der &. Wenn der parameter-Werte, die Sonderzeichen enthalten, nur UrlEncode Sie.
Ich finde es hilfreich, encode-query-string-Parameter in Base64, bevor Sie senden. In einigen Fällen hilft dies, wenn Sie benötigen, senden Sie alle Arten von Sonderzeichen. Es macht nicht für das gute debug-Zeichenfolgen, aber es wird Sie schützen, was Sie senden immer gemischt mit anderen Parametern.
Nur im Kopf behalten, auf der anderen Seite, die Analyse der query-string wird auch brauchen, um eine Analyse der Base64, auf die ursprüngliche Eingabe.