summaryrefslogtreecommitdiffstats
path: root/samples/OAuthClient/Facebook.aspx.cs
diff options
context:
space:
mode:
Diffstat (limited to 'samples/OAuthClient/Facebook.aspx.cs')
-rw-r--r--samples/OAuthClient/Facebook.aspx.cs38
1 files changed, 22 insertions, 16 deletions
diff --git a/samples/OAuthClient/Facebook.aspx.cs b/samples/OAuthClient/Facebook.aspx.cs
index 4701d24..e7261a0 100644
--- a/samples/OAuthClient/Facebook.aspx.cs
+++ b/samples/OAuthClient/Facebook.aspx.cs
@@ -1,31 +1,37 @@
-namespace OAuthClient {
+namespace OAuthClient
+{
using System;
using System.Configuration;
using System.Net;
using System.Web;
using DotNetOpenAuth.ApplicationBlock;
- using DotNetOpenAuth.ApplicationBlock.Facebook;
using DotNetOpenAuth.OAuth2;
- public partial class Facebook : System.Web.UI.Page {
- private static readonly FacebookClient client = new FacebookClient {
+ public partial class Facebook : System.Web.UI.Page
+ {
+ private static readonly FacebookClient facebookClient = new FacebookClient
+ {
ClientIdentifier = ConfigurationManager.AppSettings["facebookAppID"],
ClientCredentialApplicator = ClientCredentialApplicator.PostParameter(ConfigurationManager.AppSettings["facebookAppSecret"]),
};
- protected void Page_Load(object sender, EventArgs e) {
- IAuthorizationState authorization = client.ProcessUserAuthorization();
- if (authorization == null) {
+ protected void Page_Load(object sender, EventArgs e)
+ {
+ IAuthorizationState authorization = facebookClient.ProcessUserAuthorization();
+ if (authorization == null)
+ {
// Kick off authorization request
- client.RequestUserAuthorization();
- } else {
- var request = WebRequest.Create("https://graph.facebook.com/me?access_token=" + Uri.EscapeDataString(authorization.AccessToken));
- using (var response = request.GetResponse()) {
- using (var responseStream = response.GetResponseStream()) {
- var graph = FacebookGraph.Deserialize(responseStream);
- this.nameLabel.Text = HttpUtility.HtmlEncode(graph.Name);
- }
- }
+ facebookClient.RequestUserAuthorization();
+
+ // alternatively you can ask for more information
+ // facebookClient.RequestUserAuthorization(scope: new[] { FacebookClient.Scopes.Email, FacebookClient.Scopes.UserBirthday });
+ }
+ else
+ {
+ IOAuth2Graph oauth2Graph = facebookClient.GetGraph(authorization);
+ // IOAuth2Graph oauth2Graph = facebookClient.GetGraph(authorization, new[] { FacebookGraph.Fields.Defaults, FacebookGraph.Fields.Email, FacebookGraph.Fields.Picture, FacebookGraph.Fields.Birthday });
+
+ this.nameLabel.Text = HttpUtility.HtmlEncode(oauth2Graph.Name);
}
}
}