.NET 4.x Многопоточная авторизация - C#
Формулировка задачи:
Привет, я верю, что здесь есть програмисты, которые смогут мне помоч!
Уже несколько дней мучаюсь с многопоточностю, имеется массив аккаунтов на один аккаунт один поток,
каждый аккаунт проходит авторизацию на сайте вк и сохраняет куки в cookieconteiner, проблема в том, что если второй ак прошел авторизацию на сайте и допустим дальше с куками мне надо получить токен, токен берется с первого аккаунта и приходит 2 раза, как так?
читал про потоки про monitor, lock, мютекс, нечего не помогает, что делать? есть еще одна мысль, парсить куки самому и
как-то поочередно их передавать, ну опять поможет ли
string[] strArray = Box_akk1.Text.Split(new char[] { '_', '\r', '\n', '|', ' ' }, StringSplitOptions.RemoveEmptyEntries);
int[] numArray = new int[strArray.Length];
for (int i = 0; i < numArray.Length; i++)
{
string[] strArray2 = strArray[i].Split(new char[] { ':' });
object parameter = new object[] { strArray2[0], strArray2[1] };
Parallel.Invoke(
new Action(() => { new Thread(new ParameterizedThreadStart(_start_)).Start(parameter); }));
}private CookieContainer cookie = new CookieContainer();
public string _get_vk(string url)
{
try
{
string str = null;
HttpWebRequest req = (HttpWebRequest)(WebRequest.Create(url));
req.Method = "GET";
//req.UserAgent = "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.99 Safari/537.36";
if (url.IndexOf("oauth.vk.com") == 0)
{
req.ContentType = "text/html; charset=windows-1251";
req.Headers.Add("X-Powered-By", "PHP/3.8140");
}
req.CookieContainer = _cookie;
using (Stream stream = req.GetResponse().GetResponseStream())
{
str = new StreamReader(stream, Encoding.UTF8).ReadToEnd();
_cookie = req.CookieContainer;
}
return str;
}
catch
{
return null;
}
}Решение задачи: «.NET 4.x Многопоточная авторизация»
textual
Листинг программы
List<CookieContainer> lcc = new List<CookieContainer>(); lcc.Add(new CookieContainer());