I'm looking for a code fragment that will show me how to get an SID for Google Reader in C#. Anyone know of such a beast?
c# How to login to Google Reader
641 views Asked by Frank Miller At
2
There are 2 answers
0
On
It's quite easy. First you should perform a GET
request to https://www.google.com/accounts/ClientLogin
page with your login and password (don't forget to url encode them). And then just parse response (there will be several parameters divided by a new line character \n
) to get SID
. Here is a simplest example (no error handling):
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));
But you could make this code more elegant by using AsyncCTP.
You will have to deal with manual HTTP manipulations and cookies for this. A pretty decent explanation is available on this page. If you worked with HTTP requests in C#, it shouldn't be a problem to pick up the methods described there.