eray aydoğdu

jQuery and ASP.NET MVC fanatic.

Asp.Net MVC ile Facebook Uygulaması Geliştirme

Facebook inanılmaz üye sayısıyla dünyanın en güçlü sosyal paylaşım platformu olduğunu bilmeyenimiz yoktur. Facebook u ilginç kılan özellikleri arasında tabiki enteresan uygulamalar var. Facebook yazılımcılara uygulama geliştirebilmeleri için güzel olanaklar sağlıyor. Bizde Asp.net MVC ile facebook a uygulama geliştirmek için neler yapmamız gerektiğine yüzeysel bir gözatıcaz ve ufak bir facebook uygulaması örneği yapıcaz.

Öncelikle facebook hesabınız olması gerekiyor. Daha sonra facebook hesabınıza Geliştirici (Developer) uygulamasını eklememiz gerekiyor.  Daha sonraki işlemleri adım adım anlatayım,

1-  Geliştirici yi ekledikten sonra sağ üstte bulunan Yeni Uygulama Ekle yi tıklıyoruz.

2- Uygulamamıza vereceğimiz ismi girip Facebook Koşullarını kabul edip KATILIYORUZ.

3- Daha Sonra karşımıza çıkan ekranda uygulamamızla ilgili gereken ayarlar ve bunula ilgili solda bir menü göreceğiz.

4- Hakkında > kısmında uygulamızın adı ve logolarıyla ilgili ayarları göreceğiz.

5- Web Site > kısmında Uygulama Kimliği ve Application Secret ı göreceğiz bunlar bize birazdan lazım olucak.

6- Facebook Integration > en önemli kısım burda uygulamamızın tipini belirliyoruz. yani Canvas Type : FBML yapıyoruz. Tuval Sayfası ‘na uygulamamız için url mizi yazıyor örneğin; http://apps.facebook.com/deneme1/ yazıyoruz. Canvas URL de çok önemli burada uygulamamızı barındırdığımız hostingteki uygulamızın tam adresini yazıyoruz, örneğin http://erayaydogdu.com/fbapptest olarak. Page Tab kısmında ise uygulamamızın Profil Sayfalarına ya da Fun, işletme Sayfalarına Eklenebilmesinine karar veriyoruz. Eğer istiyorsak Sekme Adı na eklendiğinde gözükecek adı, Sekme URL’si kısmına ise Profilde Tab a tıklandığında Uygulamamızdan istenecek Sayfayı giriyoruz. Facebook Tab uygulamalarına sadece TEK BİR SAYFA için izin veriyor. Bu konuya daha başka bir yazıda değineceğiz. O yüzden şimdilik boş bırakabilirsiniz.

7- Basit bir uygulama yapacağımızdan diğer ayarlar olduğu gibi kalabilir.

Şimdi uygulamamıza geçelim. Visual Studio muzu açıp yeni bir MVC Application oluşturalım. Daha sonra Facebook SDK yı indirelim. İndirdiğimiz klasördeki Facebook.dll ve Facebook.Web.Mvc.dll dosyalarını projemizin bin klasörüne atıp Resource ‘a Add Referance yapıp bu iki dosyayı ekleyelim.

Site.Master daki html kodlarını temizleyip sadece body tagını <fb:canvas> </fb:canvas> olarak değiştirelim. Çünkü Facebook uygulamamızı FBML olarak geliştiriyoruz. Eğer IFRAME yapsaydık o zaman body olarak kalacaktı.

Şimdi uygulamamıza ait API KEY ve Application Secret ı web.config dosyamıza eklemiz gerekiyor.

   1: <appSettings>
   2:     <add key="Secret" value="aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"/>
   3:     <add key="ApiKey" value="bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"/>
   4: </appSettings>

Şimdi Controller’ıma Index sayfasının Action ını yazalım.

using Facebook;
using Facebook.Web;
using Facebook.Schema;
using Facebook.Session;
using Facebook.Rest;
using Facebook.Web.Mvc;

[FacebookAuthorization(IsFbml = false)]
public ActionResult Index()
{
    Api Facebook = this.GetApi();
    ViewData["userId"] = Facebook.Users.GetInfo().uid;
    return View();
}

Index View imize Kullanıcı Adını yazdıralım.

<p>Merhaba <fb:name uid="<%=ViewData[“userId”]%>" useyou="false" />!</p>

Evet bu kadar arkadaşlar gerisi size, fikirlerinize merakınıza ve araştırma azminize kalmıştır. Facebook yazılımcılara paylaşımda bulunmaları için güzel bir ortam sunmuş. PHP ile ilgili örnekler kadar olmasada .NET ile yazılmış örnekler mevcut.

İyi çalışmalar..