private async void button1_Click(object sender, EventArgs e)
{
var cookie = webBrowser1.Document.Cookie;
await
Task.WhenAll(
listBox1
.Items
.Cast<string>()
.Select(async s =>
{
var data = "action=relationship&user_id=" + s + "&relation=follow";
var req = WebRequest.Create("http://example.com") as HttpWebRequest;
req.Method = "POST";
req.ContentType = "application/x-www-form-urlencoded";
req.ContentLength = data.Length;
req.Headers["cookie"] = cookie;
using (var sw = new StreamWriter(await req.GetRequestStreamAsync(), Encoding.ASCII))
{
sw.Write(data);
sw.Close();
}
}));
listBox1.Items.Clear();
}
我試過這一百萬次,每次都運行兩次。當它運行它兩次時,它就會按照它應該做的。這是爲什麼掛?
什麼它應該做的是採取從列表框中的項目,並使用每個項目作爲POST請求的一部分。然後當它完成時,清除列表框。
有人可以解釋什麼是錯的?
您需要對URL進行編碼。 – SLaks
s只是一個數字。所以不需要URL編碼,但是謝謝。 –
究竟是什麼問題? – SLaks