2011-01-27 13 views
0

&の%26をURLに格納する文字列があります。これは、呼び出ししようとしているURLに必要なためです。WebRequestがデコードされていますか?

私は

HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create(myURL); 

を行う前に、コンソールにURL文字列を印刷し、私はコピーして、印刷されたURLを貼り付けた場合、その後、私は、所望の標的に到達することができています。

しかし、私は接続して、それが失敗した

HttpWebResponse myResponse = (HttpWebResponse)myRequest.GetResponse(); 

との応答を得るとき(URLは別のページへの更新を行い、私はコピーして、印刷されたURLを貼り付けたときに更新が行われますが、私がHttpWebResponseを実行するときではない...)。

これはWebRequestの作成時にURL文字列のエンコード/デコードと関係しますか?

ありがとうございます、ありがとうございます。

+0

コピー/ペーストと言ったら、ブラウザでURLをコピー/ペーストしますか? – Shoban

+0

更新の意味は?それはリダイレクトしているという意味ですか? –

+0

コピー/ペーストでは、コンソールに表示されたURLをコピーしてWebブラウザに貼り付けると、正しい動作が実行されます。 「更新を行う」とは、元のURLで渡された他のパラメータがエラーチェックに合格している限り、URLにリダイレクトされる別のURLを含みます。 – John

答えて

0

URLをエンコードしてみてください。このリンクを試すURL Encode

+0

私がエンコードすると、URLは... https%3a%2f%2fに変わります。正しいとは思われません。以前設定したやり方で、ユーザー名とパスワードで「ログイン」するためのURLを少なくとも送信し、元の問題の説明どおりに送信しようとしているこの2番目のURLを送信することができます。 URLをエンコードすると、最初のURLを正常に送信することさえできません。 – John

+1

私は静かではありません、私を啓発してください。あなたがURLをエンコードすると、通常、あなたのURLをブラウザ/ httpが理解しているので、https%3a%2f%2fのようなものにあなたのURLをエンコードします。 –

+0

WebRequestの作成に使用するURL文字列は次のとおりです。https://www.mywebsite.com/direct/my_test_portal.jsp?param1=00D¶m2=06E&useSecure=true&jse=0&action=myAction&[email protected]&pw=password123&startURL = apex/doMyUpdate?paramKey = abc-123%26param2Key = https%3a%2f%2f127.0.0.1 Webブラウザにコピー&ペーストすると、指定された動作が実行されます。要求が行われたときに%を持つためには、最後の2つのパラメータ(paramKeyとparam2Key)が必要です。 – John

関連する問題