使用http请求C#WPF获取facebook用户的用户ID

使用http请求C#WPF获取facebook用户的用户ID,c#,facebook,httprequest,C#,Facebook,Httprequest,我正在尝试获取一个Facebook用户的用户ID,我已经有了访问令牌,我使用http请求来完成。我的简单问题是:我想要用户的id,但是我的程序崩溃了。。。我使用WPF,C#这是我的小建议: var url = string.Format("https://graph.facebook.com/me?access_token=" + token + "&response_type=id"); var req = WebRequest.Create(url);

我正在尝试获取一个Facebook用户的用户ID,我已经有了访问令牌,我使用http请求来完成。我的简单问题是:我想要用户的id,但是我的程序崩溃了。。。我使用WPF,C#这是我的小建议:

var url = string.Format("https://graph.facebook.com/me?access_token=" + token + "&response_type=id");

        var req = WebRequest.Create(url);
        req.Method = "POST";
        req.ContentType = "application/x-www-form-urlencoded";

        string postData = "'access_token='" + token;

        byte[] byteArray = Encoding.UTF8.GetBytes(postData);
        var stream = req.GetRequestStream();
        stream.Write(byteArray, 0, byteArray.Length);
        stream.Close();

        WebResponse response = req.GetResponse();
        aTextBox.Text = ((HttpWebResponse)response).StatusDescription;
        stream = response.GetResponseStream();
        StreamReader reader = new StreamReader(stream);

谢谢

不要为此使用Web浏览器!您可以将其用于此类用途:

string url = "https://graph.facebook.com/me?access_token=" + token + "&response_type=id";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
HttpWebResponse response = (HttpWebResponse)request.GetResponse ();
Stream receiveStream = response.GetResponseStream ();
StreamReader readStream = new StreamReader(receiveStream, Encoding.UTF8);

string responseData = readStream.ReadToEnd();

不要为此使用Web浏览器!您可以将其用于此类用途:

string url = "https://graph.facebook.com/me?access_token=" + token + "&response_type=id";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
HttpWebResponse response = (HttpWebResponse)request.GetResponse ();
Stream receiveStream = response.GetResponseStream ();
StreamReader readStream = new StreamReader(receiveStream, Encoding.UTF8);

string responseData = readStream.ReadToEnd();

我想你会想使用TextReader从响应流中获取文本,或者使用像RestSharp这样的库来进行调用并为你完成所有这些工作。顺便说一句,请确保只在一个地方保留
access\u token
获取
POST
。使用
POST
方法从Graph API pass中检索数据
method=get
表明您需要检索数据而不是更新。我会检查一下,但现在我真正的问题是'WebResponse=req.GetResponse();'不起作用…我不能说什么,因为我的程序崩溃了…:我尝试了很多方法让它工作,但没有…我尝试了POST GET Near works…我也尝试了不同的语法,但它仍然崩溃…有人知道为什么吗?我不:(@HugoCardin你得到的例外是什么?我想你会想使用TextReader从响应流中获取文本,或者使用像RestSharp这样的库来进行调用并为你完成所有这些工作。顺便说一句,请确保只在一个地方保留
access\u token
POST
。使用
POST
方法to从Graph API pass
method=get
检索数据,表明您需要检索数据而不是更新。好吧,我会检查一下,但现在我真正的问题是'WebResponse=req.GetResponse()不起作用…我什么也说不出来,因为我的程序崩溃了…:S我尝试了很多方法让它工作,但它没有…我尝试了POST GET Not works…我也尝试了不同的语法,但它仍然崩溃…有人知道为什么吗?我不知道:(@HugoCardin你得到了什么例外?