کانال بله, جهت پشتیبانی و اطلاع رسانی کانال بله, جهت پشتیبانی و اطلاع رسانی
عضویت

آموزش Login به آپلیکیشن با استفاده از FaceBook

آموزش پیاده سازی قابلیت هویت سنجی برای ورود کاربر به اپلیکیشن با facebook login و دسترسی به مقدار پارامتر query string

در این آموزش با استفاده از پکیج facebook ناگت در اپلیکیشن C# خود و دسترسی به مقدار پارامتر/متغیر querystring، قابلیت هویت سنجی (authorization) کاربر برای ورود به سایت (از طریق صفحه ی ورود و login سایت facebook) را پیاده سازی می کنیم.

  1. ابتدا لازم است پکیج "facebook" در nuget را داخل پروژه ی C# خود نصب نمایید.
  2. در گام دوم بایستی اپلیکیشن Facebook خود را با مراجعه به آدرس https://developers.facebook.com/ ایجاد کرده، سپس appId و appSecret را در اپلیکیشن مربوطه ذخیره نمایید.
  3. حال کد زیر را جهت پیاده سازی قابلیت هویت سنجی (authorization) facebook اجرا کرده و متد "FacebookLogin" را در action event فراخوانی کنید.
    //fig-1  
    [HttpPost]  
    public string FacebookLogin() {  
        try {  
            // Instantiate the Facebook client  
            var oauth = new FacebookClient();  
            var fbLoginUrl = oauth.GetLoginUrl(new {  
                client_id = "Enter ApplicationID",  
                    client_secret = "Enter ApplicationSecret",  
                    redirect_uri = "Enter RedirectUri",  
                    response_type = "code",  
                    scope = "manage_pages,email" // Add other permissions as needed  
            });  
            var fbloginUri = fbLoginUrl.AbsoluteUri;  
            Session["ClientId"] = "Enter ApplicationID",  
                return fbloginUri;  
        } catch (Exception) {  
            return null;  
        }  
    } // This is just a sample script. Paste your real code (javascript or HTML) here.  
    if ('this_is' == /an_example/) {  
        of_beautifier();  
    } else {  
        var a = b ? (c % d) : e[f];  
    } 
    
  4. در زیر url لازم برای دسترسی به صفحه ی ورود/facebook login را مشاهده می کند.
    https://www.facebook.com/login.php?skip_api_login=?&api_key=?&signed_next=?&next=?&cancel_url=?&display=?&locale=?&logger_id=?
  5. پس از هویت سنجی کاربر از طریق صفحه ی login سایت Facebook، شما url زیر را با [code] پارامتر querystrings دریافت می کنید:
    http://localhost:url?code=?

  6. لازم است مقدار پارامتر یا متغیر Querystring را در فضای session ذخیره کرده و تابع زیر را در event page_load فراخوانی نمایید.
    //fig-2  
    public void GetQueryStringValue() {  
        string _code = string.Empty;  
        if (!string.IsNullOrEmpty(System.Web.HttpContext.Current.Request.UrlReferrer.Query)) {  
            List < string > collection = GetQueryStringCollection(System.Web.HttpContext.Current.Request.UrlReferrer.Query, 0);  
            if (collection != null && collection.Count > 0) {  
                _code = System.Web.HttpContext.Current.Server.UrlDecode(collection[0]);  
                Session["code"] = _code;  
            }  
        }  
    }  
    // Get Querystring name value collection  
    public List < string > GetQueryStringCollection(string url, int count) {  
        string keyValue = string.Empty;  
        List < string > collection = new List < string > ();  
        string[] querystrings = url.Split('&');  
        if (querystrings != null && querystrings.Count() > count) {  
            for (int i = 0; i < querystrings.Count(); i++) {  
                string[] pair = querystrings[i].Split('=');  
                collection.Add(pair[1]);  
            }  
        }  
        return collection;  
    }  
    
1396/05/12 3480 1985
رمز عبور : tahlildadeh.com یا www.tahlildadeh.com
نظرات شما

نظرات خود را ثبت کنید...