Facebook uygulamaları aslında birer web sitesidir. Siz facebook'ta uygulamaya girdiğinizde, o sayfanın ortasına, uygulama sayfası yerleştirilir. Yani siz facebook içinde başka bir siteyle etkileşimde bulunuyorsunuz. Biz de bu yazıda asp.net mvc 3 ile basit bir uygulama yapıp yayınlayacağız. Facebook uygulaması geliştirmek için öncelikle https://developers.facebook.com/ sayfasına girip, burada uygulamalar sekmesinden yeni bir uygulama oluşturmanız gerekmekte. Çıkan lightobox'a uygulama adını yazmanız gerekiyor. Ben örnek uygulamamıza olarak Mvc-Uygulama adını veriyorum. Karşımıza çıkan sayfada uygulamamızın ayarlarını yapmamız gerekiyor. Burada uygulamamızın logosunu ve icon'unu değiştirebiliyoruz. Facebook her uygulama için farklı App ID ve App Secret değerleri üretiyor. Biz de bizim uygulamamız için üretilen bu değerleri bir kenara kaydiyoruz çünkü uygulamayı yazmaya başladığımızda lazım olacak. App Namespaces bölümüne, uygulamamızın url'inde görünecek olan ismini yazıyoruz. Mesela bu uygulamaya https://apps.facebook.com/mvc-uygulama adresinden erişilebilecek. Site adresi kısmına, uygulamayı barındırdığınız domain'deki adresi yazacaksınız. Başta da belirttiğimiz gibi facebook uygulamaları aslında belli bir adresi olan web siteleridir. Biz localde çalıştığımız için adres olarak http://localhost:14118 yazıyoruz. 14118 bizim mvc uygulamamızın çalıştığı port numarası olacak. Bunu da bir kenara kaydedelim çünkü bunu da daha sonra kullanacağız.

http://www.yakupbugra.com/wp-content/uploads/mvc-facebook-1(1).png

Değişiklikleri kaydettikten sonra yeni bir Asp.Net Mvc 3 projesi açıyoruz. Ben projeye Mvc-Uygulama ismini verdim. Proje açıldıktan sonra solution explorer penceresinden projeya sağ tıklayıp properties seçeneğine tıklıyoruz. Karşımıza, projenin bazı ayarlarını yapacağımız bir pencere çıkıyor. Web sekmesine gelip, Spesific port seçeneğini işaretliyoruz ve port numarası olarak da yukarıda kaydettiğimiz 14118 yazdıktan sonra kaydedip kapatıyoruz. Artık projemizi her debug edişimizde projemiz, http://localhost:14118 adresi üzerinde çalışacaktır. Bunu yapmamızın sebebi, facebook'un bizden sabit bir adres istemesi.

Şimdi ilk olarak projemize Facebook C# Sdk yüklememiz gerekiyor. Açık kaynak olan bu kütüphaneyi buradan inceleyebilirsiniz. Bu sdk ile Facebook API işlemlerini daha pratik bir şekilde halledeceğiz. Kütüphaneyi ister indirip kendiniz referans olarak eklersiniz, isterseniz  Nuget ile kolayca yükleyebilirsiniz. Ben Nuget kullanmayı tercih ediyorum. (Nuget hakkında)  Tools > Library Package Manager > Manage Nuget Packages'e tıklayıp nuget penceresini açıyoruz. Arama kutusuna facebook yazınca karşımıza çıkan FacebookWebMvc paketini yüklüyoruz. Bunu yüklediğimiz zaman zaten diğer Facebook, FacebookWeb paketleri de otomatik olarak yüklenecektir.

http://www.yakupbugra.com/wp-content/uploads/nuget.png

Şimdi projemizin webconfig sayfasını açıyoruz ve

 <facebookSettings appId="{app id}" appSecret="{app secret}" />

satırını bulup daha önce bir kenara kaydettiğimiz App ID ve App Secret değerlerini  tırnak aralarına yazıyoruz. Kullandığımız Facebok C# Sdk'sının bu bilgilere ihtiyacı olacak. Artık facebook uygulaması için temelleri atmış bulunuyoruz.


Trackback

12 yorum

  1. [...] İlk yazımda uygulama geliştirmek için gerekli olan temel işlemleri yapmıştık. Şimdi ise uygulamamızın sınıflarını ve arayüzlerini hazırlayacağız. Uygulamayı buradan indirip inceleyebilirsiniz. Öncelikle projenin ana dizinine Face isminde bir klasör ekliyoruz. Bu klasör içinde facebook ile ilgili sınıflarımızı tutacağız. Sonra klasöre sağ tıklayıp FacebookProfile isminde yeni bir sınıf ekliyoruz. Bu bizim, facebook profilleri için kullanacağımız model sınıfımız olacak. Aşağıdaki kodları sınıfımıza yazıyoruz. [...]

  2. Türkçe kaynak bulmak çok zor oluyor böyle bir makale yayınladıgınız için teşekkür ederim.secure canvas url kısmı boş bırakılmıs oraya ne yazmamız gerekiyor ve app domain kısmı sizde görünmüyor ben bir uygulama olusturmak istediğimde ise app domain girmemi istiyor bu konularda yardımcı olabilir misiniz?Birde bu uygulamayı calıstıran kişiler localhost olarak kendi bilgisayarları üzerinde mi kullanıcaklar uygulmayı ve bu uygulamayı geliştirdiğimiz dosyaları facebook a nasıl yükleyeceğiz?Tekrar teşekkür ederim

  3. Yakup Buğra @ 2011-09-14 11:52

    Secure canvas url için https:// li bir domain gerekiyor galiba. Ama bunu yapmanıza gerek yok. App domain diye birşey yok ama siz yine de localhost yazmayı deneyin. Uygulumayı local’de çalıştıracaksınız. Facebook’a yükleme diye bir şey yok. Zaten ikinci makalede görebilirsiniz bunu.

  4. adsız cengaver @ 2011-09-16 14:49

    çok saolun hocam..hocam birde like butonuyla bütünleşik bi uygulama yapabilir misiniz_?fan page altında pag tabe altında beğenenleri uygulamaya yönlendiren bişey nasıl yapılabilnir ki acaba_?emeklerinize saygı ve çok teşekkürler..

  5. ali kahraman @ 2011-09-17 22:45

    selam..hocam aca bi fanpage te kullanıcı like basınca bundan sonra fanpage içini nasıl değiştirebilirim..yani like etmeden önce bi resim like ettikten sonra baska bi resim nasıl göstertebiliriz_?

  6. ali kahraman @ 2011-09-17 22:59

    hocam ii hoş çalıştırdım uygulamayı ama baska bi faceten çalıştırınca yine ilk uygulamaya sahip olanın bilgilerini çekio_?sorun nerde bende mi acaba_?yoksa uygulama sadece sahibinin bilgilerini mi alıo?

  7. Yakup Buğra @ 2011-09-23 17:27

    bildiğim kadarıyla öyle bir opsiyon yok

  8. Yakup Buğra @ 2011-09-23 17:28

    Başka bir hesaptan çalıştırınca tekrar o hesap için izin ister uygulama. Sadece sahibinin bilgilerini çekmesi gibi bir durum söz konusu olmaz.

  9. mehmet öz @ 2011-12-06 23:53

    merhaba hocam bu Facebook sdk yı illa mvc de mı kullanmamız gerekiyor. eğer normal web applicationda oluyorsa ufak bir ornek gosterirmisiniz ornegin giris yapmismi diye kontrol etme kaynaklar kıt codeplex deki açıklamaları da anlayamadım.

  10. Yakup Buğra @ 2011-12-07 22:51

    Şuan için vizelerim dolayısıyla asp.net web uygulaması yazabileceğimi sanmıyorum. Ama ingilizce olarak araştırırsanız mutlaka birşeyler bulabilirsiniz

  11. Gerçekten blog olarak iyi iş çıkarmışsın kardeş. Baya yararlı biller içeriyor, kısa ve öz. Teşekkürler.

  12. Ali Candan @ 2012-01-28 01:18

    mehmet öz arkadaşının istediğini bende isteyeceğim belirttiğiniz gibi ingilizce kaynaklar ama ben Webforma rastlamadım hepsi mvc ve türkçe kaynağın olmaması kötü birşey. Şuan tahminimce vizeleriniz bitmiştir:) Şu Facebook SDK konusunda aydınlatin bizi ne olur kurcalaya kurcalaya haftalardır bıkkınlık geldi:)

Yorum Yap