ورود به حساب Autheticate با استفاده از FaceBook API در وب با ASP.Net
با سلام در این مقاله توضیح خواهیم داد که چگونه کاربر را با استفاده از حساب فیس بوک خود تأیید کنید و جزئیات پروفایل FaceBook مانند UserId، نام کاربری، نام، ایمیل و تصویر پروفایل در ASP.Net را با استفاده از Free ASPSnippets FaceBook API به اشتراک بگذارید.
ایجاد فیس بوک و دریافت شناسه
شما باید یک برنامه ایجاد کنید و یک کلید API و رمز API دریافت کنید
ایجاد فیس بوک و شناسه فیس بوک (AppId) و کلید رمز
کد HTML
در کد HTML زیر، یک دکمه Button btnLogin را برای تأیید اعتبار کاربر از طریق فیس بوک و جزئیات مشخصات آن مانند FaceBook UserId، نام کاربری، نام، ایمیل و تصویر پروفایل قرار داده ایم.
<asp:Button ID="btnLogin" runat="server" Text="Login with FaceBook" OnClick="Login" />
<asp:Panel ID="pnlFaceBookUser" runat="server" Visible="false">
<hr />
<table>
<tr>
<td rowspan="5" valign="top">
<asp:Image ID="ProfileImage" runat="server" Width="50" Height="50" />
</td>
</tr>
<tr>
<td>ID:<asp:Label ID="lblId" runat="server" Text=""></asp:Label></td>
</tr>
<tr>
<td>UserName:<asp:Label ID="lblUserName" runat="server" Text=""></asp:Label></td>
</tr>
<tr>
<td>Name:<asp:Label ID="lblName" runat="server" Text=""></asp:Label></td>
</tr>
<tr>
<td>Email:<asp:Label ID="lblEmail" runat="server" Text=""></asp:Label></td>
</tr>
</table>
</asp:Panel>
فضاهای نام
شما باید نام فضاهای زیر را وارد کنید
C #
using ASPSnippets.FaceBookAPI;
using System.Web.Script.Serialization;
VB.Net
Imports ASPSnippets.FaceBookAPI
Imports System.Web.Script.Serialization
کلاس داده
شما باید کلاس زیر را ایجاد کنید که برای نگهداری جزئیات پروفایل که از فیس بوک پس از احراز هویت نگهداری می شود استفاده شود.
C #
public class FaceBookUser
{
public string Id { get; set; }
public string Name { get; set; }
public string UserName { get; set; }
public string PictureUrl { get; set; }
public string Email { get; set; }
}
VB.Net
Public Class FaceBookUser
Public Property Id() As String
Get
Return m_Id
End Get
Set(value As String)
m_Id = value
End Set
End Property
Private m_Id As String
Public Property Name() As String
Get
Return m_Name
End Get
Set(value As String)
m_Name = value
End Set
End Property
Private m_Name As String
Public Property UserName() As String
Get
Return m_UserName
End Get
Set(value As String)
m_UserName = value
End Set
End Property
Private m_UserName As String
Public Property PictureUrl() As String
Get
Return m_PictureUrl
End Get
Set(value As String)
m_PictureUrl = value
End Set
End Property
Private m_PictureUrl As String
Public Property Email() As String
Get
Return m_Email
End Get
Set(value As String)
m_Email = value
End Set
End Property
Private m_Email As String
End Class
هویت کاربر با استفاده از حساب فیس بوک
با کلیک دکمه Button btnLogin ما کاربر را به فیس بوک هدایت می کنیم و از او می خواهیم که خود را تأیید کند تا اجازه دسترسی به جزئیات پروفایل فیس بوک مانند FaceBook UserId، نام کاربری، نام، ایمیل و تصویر پروفایل را دهد
C #
protected void Login(object sender, EventArgs e)
{
FaceBookConnect.Authorize("user_photos,email", Request.Url.AbsoluteUri.Split('?')[0]);
}
VB.Net
Protected Sub Login(sender As Object, e As EventArgs)
FaceBookConnect.Authorize("user_photos,email", Request.Url.AbsoluteUri.Split("?"c)(0))
End Sub

دریافت جزئیات پروفایل فیس بوک
درزیر کد دسترسی در رشته Query بررسی می شود و سپس بر اساس کد دسترسی آن جزئیات پروفایل کاربر مانند FaceBook UserId، نام کاربری، نام، ایمیل و تصویر پروفایل را برمی گرداند
C #
protected void Page_Load(object sender, EventArgs e)
{
FaceBookConnect.API_Key = "<Your API Key>";
FaceBookConnect.API_Secret = "<Your API Secret>";
if (!IsPostBack)
{
if (Request.QueryString["error"] == "access_denied")
{
ClientScript.RegisterStartupScript(this.GetType(), "alert", "alert('User has denied access.')", true);
return;
}
string code = Request.QueryString["code"];
if (!string.IsNullOrEmpty(code))
{
string data = FaceBookConnect.Fetch(code, "me");
FaceBookUser faceBookUser = new JavaScriptSerializer().Deserialize<FaceBookUser>(data);
faceBookUser.PictureUrl = string.Format("https://graph.facebook.com/{0}/picture", faceBookUser.Id);
pnlFaceBookUser.Visible = true;
lblId.Text = faceBookUser.Id;
lblUserName.Text = faceBookUser.UserName;
lblName.Text = faceBookUser.Name;
lblEmail.Text = faceBookUser.Email;
ProfileImage.ImageUrl = faceBookUser.PictureUrl;
btnLogin.Enabled = false;
}
}
}
VB.Net
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
FaceBookConnect.API_Key = "<Your API Key>"
FaceBookConnect.API_Secret = "<Your API Secret>"
If Not IsPostBack Then
If Request.QueryString("error") = "access_denied" Then
ClientScript.RegisterStartupScript(Me.GetType(), "alert", "alert('User has denied access.')", True)
Return
End If
Dim code As String = Request.QueryString("code")
If Not String.IsNullOrEmpty(code) Then
Dim data As String = FaceBookConnect.Fetch(code, "me")
Dim faceBookUser As FaceBookUser = New JavaScriptSerializer().Deserialize(Of FaceBookUser)(data)
faceBookUser.PictureUrl = String.Format("https://graph.facebook.com/{0}/picture", faceBookUser.Id)
pnlFaceBookUser.Visible = True
lblId.Text = faceBookUser.Id
lblUserName.Text = faceBookUser.UserName
lblName.Text = faceBookUser.Name
lblEmail.Text = faceBookUser.Email
ProfileImage.ImageUrl = faceBookUser.PictureUrl
btnLogin.Enabled = False
End If
End If
End Sub