Я говорю о POST-запросах, используя:
WebClient wc = new WebClient();
String result = wc.UploadString("http://example.com/", "data=hello, world!");
Редактировать: Это мой настоящий код прямо сейчас:
String result;
using (WebClient wc = new WebClient())
{
result = wc.UploadString("http://" + "pastebin.com/api_public.php", "POST", "paste_code=" + LongDataEscape(Clipboard.GetText()));
}
И если вывас интересует LongDataEscape:
public String LongDataEscape(String Str)
{
String Output = "";
int ByteCount = 32766;
if (Str.Length > ByteCount)
{
for (int i = 0; i < Str.Length; i+= ByteCount)
{
if (Str.Length - i < ByteCount)
Output += Uri.EscapeDataString(Str.Substring(i, Str.Length - i));
else
Output += Uri.EscapeDataString(Str.Substring(i, ByteCount));
}
}
else
Output = Uri.EscapeDataString(Str);
return Output;
}
При первом выполнении вышеуказанного фрагмента кода это всегда занимает около 15 секунд (хорошо, может быть, 10), независимо от того, к какому веб-сайту это относится, но одни и те же фрагменты кодаследующие следуют просто мгновенно.
Я думал, что может быть какая-то настройка, которая делает это, но я еще не выяснил.