Facebook Authentication with Azure Mobile Services

Merhaba arkadaşlar, bu blog yazım Microsoft Yaz Okulundan sonra yazdıgım ilk teknik yazım olacak. Teknik diyorum çünkü Microsoft Yaz Okulu boyunca her gün teknik olmayan blog yazısı yazmıştım.

Windows Phone da  Web Authentication üzerine bir örnek yapmayı planlıyorum. Malum windows phone da uygulama yazan çoğu yazılımcı, uygulamasına giriş için login sayfası yapar. Burada facebook login sayfası ile ilgili bir örnek yaparak size ufakta olsa bir yol göstermeye çalışacağım.  

1) Öncelikle Visual Studio - Store App - Windows Phone yolunu izleyerek bir proje oluşturalım. Bu projemize ilk önce referansları ekleyerek işe başlayalım. Refences kısmına sağ tıklayarak Manges NuGet Packages diyoruz ve buradan "Mobile Services" aramasını yaparak Azure Mobile Sevices SDK sını projemize entegre etmiş oluyoruz.





2) App.xaml.cs kısmına aşağıdaki kodları yazıyoruz.

----------------

        public static Microsoft.WindowsAzure.MobileServices.MobileServiceClient Client = new Microsoft.WindowsAzure.MobileServices.MobileServiceClient ("https://xxxxxmobileserviceauthentication.azure-mobile.net/", "QMGpsnVKzMCcAFNJkjXdEFWYWxxxxx9");

 public static MobileServiceUser User = null;

----------------

İlk kod azure üzerindeki mobile servisimize bağlantı için gerekli olan adres ve passwork' ü içermekte. İkinci kodda ise boş bir mobile service user oluşturuyoruz.

3) MaimPage.xaml.cs kısmına geçerek aşağıdaki kodları yazıyoruz. Açılış sayfamızın OnNavigateTo(...) metodunun içine şu kodları yazarak facebook' un bizim için yapmış olduğu arayüze ulaşmış olacağız.

----------------

  protected async override void OnNavigatedTo(NavigationEventArgs e)
        {
            while (App.User == null)
            {
                try
                {
                      App.User = await  pp. Client. LoginAsync     (MobileServiceAuthenticationProvider.Facebook) ;

                }
                catch (Exception) { }
            }
            base.OnNavigatedTo(e);
        }

----------------

3) Şimdi sıra bize facebook'un sağladığı bu güzel interface servisi ile bizim Mobile Service arasında ilişki kurmamız gerekiyor. Bunun için www.developers.facebook.com adresinden temsili bir uygulama oluşturmamız gerekiyor.


 

Burada uygulamamızın hangi platform üzerinde çalıştığı bilgisini seçtikten sonra birçok şeyi başarmış oluyoruz aslında.




3) Uygulamamızı oluşturduktan sonra, bu uygulamanın ayarlarına girerek Web Service url adresimizi ve diğer gerekli bilgileri dolduruyoruz. Ardından Status and Review kısmından uygulamamızı aktif hale getiriyoruz.




4) Son olarak ise burdan alacağımız App Id ve App Secret kodlarını, Azure Mobile Services üzerindeki Identity kısmındaki uygun alana yapıştırıyoruz. Ve böylece  protocol ü aktif hale getiriyoruz.




Programı çalıştırıdığımda aşşagıdaki gibi muazzam bir facebook login interface bizi karşılıyor. Azure Mobile Services ile herşey basit herşey mantıklı :)