我正在尝试制作这款小型Facebook桌面应用。这意味着不使用API进行登录和身份验证,但在检索访问令牌后,我确实使用API来获取详细信息。 我成功登录了POST操作,然后在API页面中读取访问令牌时遇到困难:http://developers.facebook.com/docs/reference/api/
登录后的Access-Token-Fetch部分是这样的:
HttpWebRequest ATreq = (HttpWebRequest)WebRequest.Create("http://developers.facebook.com/docs/reference/api/");
ATreq.CookieContainer = new CookieContainer();
ATreq.CookieContainer.Add(cookies);
HttpWebResponse ATres = (HttpWebResponse)ATreq.GetResponse();
StreamReader ATsr = new StreamReader(ATres.GetResponseStream());
string accesstoken = ATsr.ReadToEnd();
Match m = Regex.Match(accesstoken, @"/?access_token=(.*?)""", RegexOptions.Multiline);
string at = m.Groups[1].Value ;
textBox3.Text = at;
ATsr.Close();
ATres.Close();
所以我得到的实际上是access_token = OAUTH_ACCESS_TOKEN而不是获得该会话的真实访问令牌。
当我使用浏览器手动查看源代码时,我可以在代码中看到令牌,这有多奇怪。
任何人都知道为什么会这样,我怎么能克服这个......?
谢谢!