Vue.js ve Google Analytics

Tüm sayfalarınızı takip etmek çok kolay!

Bir süre önce Vue.js ile uygulama geliştirmeye başladım. Her site sahibinin olmazsa olmazı analiz araçlarından Google Analytics’i kullanmamız gerekiyordu. Kısa bir araştırmadan sonra 5 satır kod ile uygulamamızı izleyebileceksiniz.

vue-analytics kütüphanesi hazırlayan Matteo Gabriele kişisel blogunda diyor ki: “Track all your pages with 5 lines of code”

Nasıl kullanacağız? Projemize NPM kullarak kuruyoruz.

Kurduktan sonra Vue instance kullanabilmesi için tanımlıyoruz.

Geliştiricelere daha bir çok özellik sunmaktadır. Öğrenmek için dökümanları inceleyebilirsiniz.

Facebooktwittergoogle_plusredditpinterestlinkedin

Raspberry Pi üzerine FreeBSD Kurulumu

Raspberry Pi üzerine kurmak için SD veya Micro SD kartımızı bilgisayarımıza takıyoruz.

Kurulum işlemi için root kullanıcısına giriş yapıyoruz.

İlk önce Micro SD kartımızın lokasyonunu öğrenmemiz gerekiyor.

Diskimizi unmount ediyoruz.

Raspberry Model B için FreeBSD dist indiriyoruz. ftp://ftp.freebsd.org/pub/FreeBSD/snapshots/arm/armv6/ISO-IMAGES/

SD kartımıza kurmak için aşağıdaki komutu giriyoruz. .img dosya yoluna ve disk lokasyonuna kendiniza göre ayarlamanız gerekmektedir.

Ortalama 4-5 dk. içinde SD kartına kurulum tamamlanmaktadır.

Diski eject ediyoruz ve kartımızı Raspberry cihazımıza takıp, cihazımızı başlatıyoruz.

Facebooktwittergoogle_plusredditpinterestlinkedin

ASP.NET Web API 2’de İsteklere İzin Verme

Tarayıcı güvenliği için bir web sayfasıdan başka bir web sayfasına AJAX isteklerini engeller. Bu hassas verilerin korunmasını sağlar. Bazen de API çağrılarına izin vermek isteyebilirsiniz.

İzin vermek için W3C standartı olan CORS kullanırız. CORS bize istek yapanları, metodları ve headerları filtrelememize olanak verir.

İlk önce NuGet ile CORS paketini projemize dahil ediyoruz. Benim kullandığım 5.2.6 versiyonudur.

WebApiConfig.cs dosyasında global bir denetleme yapacaksak Global.asax dosyasımızda aşağıdaki satırın ekli olduğundan emin oluyoruz.

CORS global olarak etkinleştirmek istiyorsanız, WebApiConfig.cs dosyamızda aşağıdaki satırları ekliyoruz.

CORS Attribute dikkat ederseniz size üç filtre sunmaktadır. Yukarıdaki örnekteki gibi origins, headers ve methods değerleri belirtebilir veya joker karakteri (*) ile her şeye izin verebilirsiniz.

CORS global olarak izin verebileceğiniz gibi Controller veya Method seviyesinde de izin verebilirsiniz.

Burada unutmamız gereken iki nokta var.

  1. Controller veya method seviyesinde uyguladığımız CORS, Global olarak uyguladığımız CORS’u geçersiz kılar.
  2. Web.Config’de de CORS için ayar bulunmamalıdır. Biz projemizde bu maddede çok sıkıntı çekmiştik 🙂

 

Facebooktwittergoogle_plusredditpinterestlinkedin

Peryodik Olarak .DS_Store Dosyalarını Kaldırmak

DS_Store dosyaları göz atılan klasörlerde Finder tarafından otomatik oluşturulan dosyalardır. Bu dosyalar sistem hakkında bilgiler içermektedir ve farklı yerlere yüklenmesi güvenlik zaafiyeti taşımaktadır. Peki peryodik olarak nasıl silebiliriz?

Terminalinize crontab Unix komutunu çalıştırın ve şifre sorulduğunda yönetici şifrenizi girin.

Editörü insert moduna geçirmek için “I” harfine basın.

Yukarıdaki komutu crontab editörüne yapıştırın. Bu komut ile beş dakikalık aralıkla sisteminizdeki .DS_Store dosyaları silinecektir.

Komutu kayıt etmek için ESC ve editörü kapatmak için Shift+Z+Z tuşlarına eşzamanlı basın.

Facebooktwittergoogle_plusredditpinterestlinkedin

Symlink Nedir?

Symlink, dosyanız için sembolik bağ oluşturur. Bu yöntem ile çalıştığımız dosya bir dizinde olacak ve o dosyaya istediğimiz dizinden erişebileceğiz.

Symlink Nerelerde Kullanabiliriz?

Unix tabanlı işletim sistemlerinde tüm dosyalar hiyerarşik bir düzende klasörlenir. Bir klasör içinde bulunan dosyayı, bulunduğu dizin haricinde kopyalamak istemiyorsak ama istediğimiz klasör içinde kullanmak istiyorsak Symlink ile sembolik bağ oluşturabiliriz.

Symlink Nasıl Kullanabiliriz?

Link oluşturmak için ln komutu kullanılır ve Symlink yapmak içinse -s parametresi kullanılır. Eğer parametre kullanmazsanız hardlink olacaktır.

Facebooktwittergoogle_plusredditpinterestlinkedin

Unsigned Nedir?

Tüm integer alanlar için kullanılan bir özelliktir. Sayısal alanlar belirlenmiş uzunlukları vardır. Özetle aşağıda belirtilmiştir.

TINYINT () -128 ile 127 arası
SMALLINT () -32768 ile 32767 arası
MEDIUMINT () -8388608 ile 8388607 arası
INT () -2147483648 ile 2147483647 arası
BIGINT () -9223372036854775808 ile 9223372036854775807 arası

Bütün alanların negatifden başlayıp, pozitfte belirli bir sınırı vardır. Eğer integer alanı unsigned olarak belirlerseniz, ilgili alan negatif değer alamayacaktır. Özetle aşağıdaki aralıklarda değer alacaktır.

TINYINT () 0 ile 255 arası
SMALLINT () 0 ile 65535 arası
MEDIUMINT () 0 ile 16777215 arası
INT () 0 ile 4294967295 arası
BIGINT () 0 ile 18446744073709551615 arası

Facebooktwittergoogle_plusredditpinterestlinkedin

Mac OS Dashboard Penceresini Kapatmak

Spotlight kullanımındaki fonksiyonellikten sonra dashboard neredeyse kullanmaz hale geldim. Biraz fazla düzenli olduğumdan gereksiz şeylerin ortada olmasını da sevmiyorum. Peki bu dashboard nasıl kapatacağız?

  1. Yöntem: Mission Control panelinden Dashboard seçeneğini Off (Kapalı) yapmak

2. Yöntem: Konsoldan aşağıdaki komut ile kapatmak

Facebooktwittergoogle_plusredditpinterestlinkedin

Visual Studio Projelerinde Yüklenen NuGet Paketlerin Farklı Sürüm Problemi

NuGet severek kullandığım bir extension ama solationa eklediğiniz projeler arasında yüklediğiniz paketler arasında versiyon uyumsuzluğu olabilir. Bir de çok n-layered bir mimariniz varsa gözden kaçanlar da olabilir. Gözünüzden kaçarsa output penceresinde aşağıdaki gibi bir hatayı görebilirsiniz.

C:\Program Files (x86)\MSBuild\14.0\bin\Microsoft.Common.CurrentVersion.targets(1820,5): warning MSB3277: Found conflicts between different versions of the same dependent assembly that could not be resolved. These reference conflicts are listed in the build log when log verbosity is set to detailed.

Paketler arasındaki bu uyumsuzluğu düzeltmek için, NuGet gerekli önlemi unutmamış 🙂 Solution üzerinde NuGet Paket Yönetimine girdiğinizde 4. bir sekme göreceksiniz. Bütün projelerinizi tarayıp, uyumsuz olan paketleri size göstermektedir.

Facebooktwittergoogle_plusredditpinterestlinkedin