ENES TAŞ

Senior Software Developer

ASP.NET MVC Google Takvim Entegrasyonu (JavaScript Google Calendar Api) 21.10.2019

Google Calendar API kullanarak, kullanıcıların takvim etkinlikliklerini özel bir web uygulamasından yönetmesini nasıl sağlarız diyen geliştiriciler için kaynak olması açısından bir proje hazırlamaya karar verdim ve bu pazar (pazardır, tatildir aldırmadan) işe koyuldum. 

Özellikle .Net geliştiricilerinin bu konudan çok muzdarip olduklarını gözlemledim. Google API dökümanlarında .Net tabanlı örnekler var ve bu örnekler incelenerek hazırlanmış, yeterli olduğunu düşündüğüm yerel kaynaklar da var. Ancak geliştiriciler bu kaynaklardan yola çıkarak (ki onlardan biri benim) web tabanlı bir uygulama için işe koyulduklarında, lokalde herhangi bir problem yaşamazken, iş projeyi sunucuda yayımlamaya gelince hüsranla karşılaşmaktalar. 

Çünkü .Net tarafında GoogleWebAuthorizationBroker.AuthorizeAsync metodunda kullanıcının client'dan oturum açıp uygulamaya izin vermesi gerektiği için uygulama hataya düşüyor. Bu nedenle bu işlemlerin tamamen client tarafında yürütülmesi gerekiyor. 

Daha önce masaüstü tabanlı .Net uygulamalarımda Google Takvim senkronizasyonunu yapmıştım. Aynı ihtiyaç geliştirmiş olduğum ASP.NET tabanlı bir web uygulamasında da doğmuştu. Javascript ile bir sınıf hazırlayarak google takvim entegrasyonunu uygulamada sağladım.

Google api referanslarında ve internette Javascript tabanlı bir örnek pek olmadığı için bunu örnek bir uygulamaya dökerek ve biraz daha kapsamlı hale getirerek, geliştiricinin ihtiyacı olan her işlemi karşılayabilmesi açısından kaynak bir proje oluşturup github üzerinden yayımladım. Makaleyi de ilk olarak medium üzerinden yayımladım, bu nedenle buradan sonrasına medium üzerinden devam etmeniz daha iyi olacaktır. Orada hem google developer console üzerinden api kullanımı için gerekli işlemlerin nasıl yapıldığını anlattım, hem de github reposunu paylaştım.  

Örnek uygulamada full calendar kullandım, full calendar ile ilgili daha önce iki tane makale yayımlamıştım. Bu projede ise full calendar üzerinden google takvimlerimizi yönetmeyi sağladım. Veritabanı ile ilgili işlemlere ihtiyaç duyarsanız diğer iki makaleyi de inceleyebilirsiniz. 

Medium üzerindeki yazıya buradan ulaşabilirsiniz. 


Full Calendar ile ilgili makalaler için; 

Asp.Net MVC Full Calendar Kullanımı -1

Asp.Net MVC Full Calendar Kullanımı -2 (Veritabanı İşlemleri)


Etiketler

Yorum Yap