Это довольно просто.Сначала вы должны выполнить GET
запрос на страницу https://www.google.com/accounts/ClientLogin
со своим логином и паролем (не забудьте URL кодировать их).А затем просто проанализируйте ответ (будет несколько параметров, разделенных символом новой строки \n
), чтобы получить SID
.Вот самый простой пример (без обработки ошибок):
var url = string.Format("https://www.google.com/accounts/ClientLogin?service=reader&Email={0}&Passwd={1}",
HttpUtility.UrlEncode(email),
HttpUtility.UrlEncode(password)
);
var web = new WebClient();
web.DownloadStringCompleted += (sender, e) =>
{
var sid = e.Result.Split('\n')
.First(s => s.StartsWith("SID="))
.Substring(4);
};
web.DownloadStringAsync(new Uri(url));
Но вы могли бы сделать этот код более элегантным, используя AsyncCTP .