0

データをサーバーに送信する際に Web ブラウザが使用する URL エンコーディングは何ですか? 私のアプリケーションでは使用してHttpUtility.UrlEncode(string data) いますが、Web ブラウザーで得られる結果は得られません。

私のアプリケーションは、いくつかのテキスト データをフォーラムに送信します。

Web ブラウザー (Google Chrome) でデータを送信すると、サーバーに送信された正確なテキストが表示されますが、アプリケーションを使用して送信すると、異なる文字が表示されます。

サーバーにデータを送信するには、URLエンコードする必要がありますか?

- -編集 - -

        data = HttpUtility.UrlEncode(textBox1.Text);

        HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
        request.CookieContainer = cookieContainer;
        request.UserAgent = "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.56 Safari/536.5";
        request.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8";
        request.Headers.Add("Accept-Charset", "ISO-8859-2,utf-8;q=0.7,*;q=0.7");
        request.Headers.Add("Accept-Encoding", "gzip, deflate");
        request.Headers.Add("Accept-Language", "pl,en-us;q=0.7,en;q=0.3");
        request.Method = "POST";
        byte[] byteArray = new byte[256];
        ASCIIEncoding ascii = new ASCIIEncoding();
        byteArray = ascii.GetBytes(data);     

        request.ContentType = "application/x-www-form-urlencoded";
        request.ContentLength = byteArray.Length;
        Stream dataStream = request.GetRequestStream();
        dataStream.Write(byteArray, 0, byteArray.Length);
        dataStream.Close();

textbox1 のデータはこのようなものです。

¦=¦=¦¦=¦=¦
RUNTIME………..: 2h:13m:15s
RELEASE SIZE……: 16,2GB
VIDEO CODEC…….: x264, 2pass,
4

1 に答える 1

1

通常、url パラメーターに URL 予約文字 (?、& など) を含めたい場合は、URLEncode のみを行う必要があります。

于 2012-06-22T15:13:53.380 に答える