توضیحات و دانلود

ورود با حساب Facebook در ASP.Net MVC
0 0
ورود با حساب Facebook در ASP.Net MVC

 با سلام در این مقاله با یک مثال ، چگونگی ادغام و پیاده سازی تأیید فیس بوک در ASP.Net MVC Razor یعنی ورود با حساب Facebook در ASP.Net MVC Razor توضیح خواهیم داد
تایید اعتبار فیس بوک در ASP.Net MVC Razor با استفاده از API فیس بوک رایگان اجرا می شود .
توجه : شما می توانید آخرین FaceBookAPI.dll را با کلیک روی لینک دنلود کنید. فایل DLL را بارگیری کنید
ایجاد Facebook و دریافت شناسه
شما نیاز به ایجاد برنامه و دریافت یک کلید API و رمز API  دارید.
ایجاد FaceBook و شناسه Facebook (AppId) و Secret Key
فضاهای نام
باید نامهای زیر را وارد کنید.

using ASPSnippets.FaceBookAPI;
using System.Web.Script.Serialization;

Model
در زیر کلاس Model وجود دارد که برای جمع آوری جزئیات کاربر فیس بوک استفاده می شود.

public class FaceBookUser
{
    public string Id { get; set; }
    public string Name { get; set; }
    public string PictureUrl { get; set; }
    public string Email { get; set; }
}


Controller
Controller از دو روش تشکیل شده است.
روش انجام عملیات GET
در داخل این روش API Key و رمز برای API Facebook تنظیم شده است. سپس یک بررسی برای تشخیص خطا از API فیس بوک انجام می شود که وقتی کاربر فیس بوک اجازه دسترسی به برنامه Facebook را رد می کند ، انجام می شود. در صورت یافتن خطا ، پیامی در شیء ViewBag تنظیم می شود که بعداً با استفاده از جعبه پیام هشدار JavaScript نمایش داده می شود.
و در صورت عدم یافتن خطایی ، CODE دریافت شده از API Facebook برای تولید Access Token و سپس با استفاده از Access Token برای واکشی جزئیات کاربر استفاده می شود.
سرانجام جزئیات بدست آمده به View بازگردانده می شوند.
روش دستیابی به عملیات POST برای تأیید اعتبار با استفاده از حساب Facebook
با کلیک بر روی دکمه ورود ، این روش Action فراخوانی می شود. کاربر به وب سایت فیس بوک هدایت می شود و از وی خواسته می شود اجازه دسترسی به جزئیات خود را دریافت کند.

public class HomeController : Controller
{
    // GET: Home
    public ActionResult Index()
    {
        FaceBookConnect.API_Key = "<Your API Key>";
        FaceBookConnect.API_Secret = "<Your API Secret>";
 
        FaceBookUser faceBookUser = new FaceBookUser();
        if (Request.QueryString["error"] == "access_denied")
        {
            ViewBag.Message = "User has denied access.";
        }
        else
        {
            string code = Request.QueryString["code"];
            if (!string.IsNullOrEmpty(code))
            {
                string data = FaceBookConnect.Fetch(code, "me?fields=id,name,email");
                faceBookUser = new JavaScriptSerializer().Deserialize<FaceBookUser>(data);
                faceBookUser.PictureUrl = string.Format("https://graph.facebook.com/{0}/picture", faceBookUser.Id);
            }
        }
 
        return View(faceBookUser);
    }
 
    [HttpPost]
    public EmptyResult Login()
    {
        FaceBookConnect.Authorize("user_photos,email", string.Format("{0}://{1}/{2}", Request.Url.Scheme, Request.Url.Authority, "Home/Index/"));
        return new EmptyResult();
    }
}

View
در داخل View ، در اولین خط کلاس FaceBookUser به عنوان Model برای View اعلام می شود.
View شامل یک فرم HTML است که با استفاده از روش Html.BeginForm با پارامترهای زیر ایجاد شده است.
ActionName - نام عمل در این حالت Index است.
ControllerName - نام Controller در این حالت Home است.
FormMethod - این روش فرم یعنی GET یا POST را مشخص می کند. در این حالت روی POST تنظیم می شود.
View شامل یک دکمه ارسال HTML است که با کلیک روی داده ها را به روش ورود به سیستم اقدام می کند.
یک جدول HTML وجود دارد که برای نمایش جزئیات ورود به سیستم در کاربر Facebook استفاده می شود.

@model FaceBook_Login_MVC.Models.FaceBookUser
 
@{
    Layout = null;
}
 
<!DOCTYPE html>
 
<html>
<head>
    <meta name="viewport" content="width=device-width"/>
    <title>Index</title>
</head>
<body>
    @using (Html.BeginForm("Login", "Home", FormMethod.Post))
    {
        <input type="submit" value="Login with FaceBook"/>
        if (!string.IsNullOrEmpty(Model.Id))
        {
            <hr/>
            <table cellpadding="0" cellspacing="0">
                <tr>
                    <td rowspan="5" valign="top">
                        <img src="@Model.PictureUrl" style="height:50px;width:50px"/>
                    </td>
                </tr>
                <tr>
                    <td>ID: @Model.Id</td>
                </tr>
                <tr>
                    <td>Name: @Model.Name</td>
                </tr>
                <tr>
                    <td>Email: @Model.Email</td>
                </tr>
            </table>
        }
    }
    @if (ViewBag.Message != null)
    {
        <script type="text/javascript">
            window.onload = function () {
                alert('@ViewBag.Message');
            }
        </script>
    }
</body>
</html>

عکسهای صفحه
صفحه مجوز برنامه Facebook

نمایش پیغام زمانی که کاربر اجازه نمیدهد

ورود موفقیت آمیز در فیس بوک

 

 


دانلود
  • لینک های دانلود دوره های آموزشی تا پایان دوره قابل دانلود می باشد.
  • برای خارج کردن فایل ها از حالت فشرده از ورژن جدید نرم افزار winrar استفاده کنید.
  • برای خارج کردن فایل ها از حالت فشرده لینک های دانلودی که چندین قسمت می باشند فقط قسمت اول را از حالت فشرده خارج کنید.
  • لطفا توضیحات نوشته شده برای مطالب را با دقت بخوانید.
  • برای نمایش فیلم ها می توانید از نرم افزار هایی مانند Km Player , VLC Player یا Media Player Classic استفاده کنید.

ارسال نظر
ارسال پیام به :