protected void Page_Load(object sender, EventArgs e)
        {
            string access_token = Request.Params["access_token"];
            string code = Request.Params["code"];

            if (!String.IsNullOrEmpty(code))
            {

                RS.setCode(code);
                //Response.Redirect(RS.get_token_url);
                
                HttpWebRequest request = (HttpWebRequest)WebRequest.Create(RS.get_token_url);
                HttpWebResponse response = (HttpWebResponse)request.GetResponse();
                DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof(JsonDataStrcuture));
                JsonDataStrcuture JsonDataStrcuture = new JsonDataStrcuture();
                JsonDataStrcuture = serializer.ReadObject(response.GetResponseStream()) as JsonDataStrcuture;

                FBResourceRequest req = new FBResourceRequest();
                req.access_token = new AccessToken();
                req.access_token.token = JsonDataStrcuture.AccessToken;
                req.UserID = user_id;
                req.scope = new GenericAuthNameSpace.Permissions();
                req.scope.permissionSet = new HashSet<GenericAuthNameSpace.Permission>();
                req.scope.permissionSet.Add(new ResourceServerImpl.FBEmailPermission());

                FBResourceResponse resp = RS.RequestResource(req);
                if (resp == null)
                {
                    email.InnerHtml = "verification failed";
                }
                else
                {
                    Resource r = resp.resources.resourceSet.First();
                    email.InnerHtml = "John's email is " + r.value;
                }
            }
            else if (!String.IsNullOrEmpty(access_token))
            {
                notLoggedIn.Visible = false;
                LoggedIn.Visible = true;
            }
            else
            { 
                notLoggedIn.Visible = true;
                LoggedIn.Visible = false;
            }
        }
Exemplo n.º 2
0
        protected void Page_Load(object sender, EventArgs e)
        {
            string access_token = Request.Params["access_token"];
            string code         = Request.Params["code"];

            if (!String.IsNullOrEmpty(code))
            {
                RS.setCode(code);
                //Response.Redirect(RS.get_token_url);

                HttpWebRequest             request           = (HttpWebRequest)WebRequest.Create(RS.get_token_url);
                HttpWebResponse            response          = (HttpWebResponse)request.GetResponse();
                DataContractJsonSerializer serializer        = new DataContractJsonSerializer(typeof(JsonDataStrcuture));
                JsonDataStrcuture          JsonDataStrcuture = new JsonDataStrcuture();
                JsonDataStrcuture = serializer.ReadObject(response.GetResponseStream()) as JsonDataStrcuture;

                FBResourceRequest req = new FBResourceRequest();
                req.access_token       = new AccessToken();
                req.access_token.token = JsonDataStrcuture.AccessToken;
                req.UserID             = user_id;
                req.scope = new GenericAuthNameSpace.Permissions();
                req.scope.permissionSet = new HashSet <GenericAuthNameSpace.Permission>();
                req.scope.permissionSet.Add(new ResourceServerImpl.FBEmailPermission());

                FBResourceResponse resp = RS.RequestResource(req);
                if (resp == null)
                {
                    email.InnerHtml = "verification failed";
                }
                else
                {
                    Resource r = resp.resources.resourceSet.First();
                    email.InnerHtml = "John's email is " + r.value;
                }
            }
            else if (!String.IsNullOrEmpty(access_token))
            {
                notLoggedIn.Visible = false;
                LoggedIn.Visible    = true;
            }
            else
            {
                notLoggedIn.Visible = true;
                LoggedIn.Visible    = false;
            }
        }