Ngrok ile Hızlı ve Güvenli Webhook Testi Nasıl Yapılır?
Bugün sizlere, geliştiriciler için sıkça ihtiyaç duyulan ngrok’tan bahsedeceğim. Ngrok, yerel sunucularınızı internet üzerinden erişilebilir hale getiren güvenli tünel hizmetleri sağlayan bir araçtır. Özellikle geliştirme ve test aşamalarında büyük kolaylık sağlar. Örneğin, dışardan webhook olarak istek almanız gerektiğinde, ngrok sizin vazgeçilmeziniz olacaktır. Şimdi, ngrok’un ne olduğunu, nasıl kurulduğunu ve nasıl kullanıldığını adım adım inceleyelim.
Ngrok Nedir?
Ngrok, yerel bilgisayarınızda çalışan bir uygulamayı, internet üzerinden erişilebilir hale getiren bir tünel servisidir. Bu sayede, yerel sunucunuzun URL’sini uzaktaki ekip üyeleriyle paylaşabilir, mobil cihazlardan test yapabilir veya web hook’ları hızlıca test edebilirsiniz.
Ngrok Nasıl Kurulur?
Ngrok’u kurmak için ngrok kurulum sayfasındaki adımları takip edebilirsiniz. Bu sayfada MacOS, Windows, Linux, Docker gibi farklı platformlara göre detaylı kurulum rehberleri bulunmaktadır. Ayrıca, Go, NodeJS, .Net gibi çeşitli SDK’lar için de kurulum rehberleri mevcuttur.
Adım 1: Ngrok Hesabı Oluşturma
Ngrok’u kullanmaya başlamadan önce ngrok.com adresinden bir hesap oluşturmanız gerekmektedir. Hesap oluşturduktan sonra, kontrol panelinizde bir kimlik doğrulama anahtarı (auth token) bulacaksınız.
Adım 2: Ngrok’u İndirme ve Kurma
Mac İçin Kurulum Örneği : Ngrok’u indirmek için aşağıdaki adımları takip edebilirsiniz:
- Homebrew ile ngrok’u yükleyin:
brew install ngrok/ngrok/ngrok
- Ngrok’u doğrulama anahtarınızla kimlik doğrulaması yapın:
ngrok config add-authtoken <your_auth_token>
Adım 3: Ngrok’u Çalıştırma
Yerel sunucunuzu internet üzerinden erişilebilir hale getirmek için ngrok’u başlatabilirsiniz. Örneğin, yerel bilgisayarınızda çalışan bir web sunucusunu (örneğin, localhost:8080) yayınlamak için aşağıdaki komutu kullanabilirsiniz:
ngrok http http://localhost:8080
Bu komutu çalıştırdığınızda, terminal ekranınızda aşağıdaki gibi bir çıktı alacaksınız:
Session Status online
Account Your Account (Plan: Free)
Version 2.3.40
Region United States (us)
Web Interface http://127.0.0.1:4040
Forwarding http://randomsubdomain.ngrok.io -> http://localhost:8080
Forwarding https://randomsubdomain.ngrok.io -> http://localhost:8080
Connections ttl opn rt1 rt5 p50 p90
0 0 0.00 0.00 0.00 0.00
Bu çıktıdaki Forwarding
kısmında belirtilen URL'ler, yerel sunucunuza internet üzerinden erişim sağlayacak adreslerdir. Ayrıca, http://127.0.0.1:4040
adresi üzerinden ngrok'un web arayüzüne erişebilir, aktif bağlantılarınızı izleyebilir ve trafiği analiz edebilirsiniz.
Ngrok’un Avantajları
- Kolay Kurulum: Ngrok, hızlı ve kolay bir kurulum süreci sunar.
- Güvenli Bağlantılar: Tünel bağlantılarınız SSL ile şifrelenir, bu da güvenliği artırır.
- Gelişmiş Özellikler: Web arayüzü sayesinde aktif bağlantılarınızı izleyebilir, tünel trafiğini analiz edebilirsiniz.
- Web Hook Testleri: Dışarıdan gelen web hook çağrılarını kolayca test edebilirsiniz.
Örnek Kullanım Senaryoları
- Ekip İçi Paylaşım: Geliştirme ortamınızı ekip arkadaşlarınızla hızlıca paylaşabilirsiniz. Örneğin, bir feature geliştirdiğinizde, diğer ekip üyelerinin bu özelliği test edebilmesi için yerel sunucunuzu ngrok ile paylaşabilirsiniz. Böylece, kodunuzu üretim ortamına aktarmadan önce geri bildirim alabilirsiniz.
- Mobil Cihazlarda Test: Yerel sunucunuzda geliştirdiğiniz web uygulamalarını mobil cihazlardan test edebilirsiniz.
- Web Hook Entegrasyonları: Üçüncü parti servislerden gelen web hook çağrılarını yerel ortamda test edebilirsiniz. Örneğin, bir ödeme sağlayıcısından gelen bildirimleri veya bir CI/CD aracından gelen web hook’ları ngrok kullanarak yerel sunucunuzda karşılayabilir ve entegre edebilirsiniz.
Sonuç
Ngrok, özellikle yerel geliştirme ortamınızı dış dünyaya açmak istediğinizde vazgeçilmez bir araçtır. Bu makalede ngrok’un temel kurulum ve kullanım adımlarını öğrendik. Siz de ngrok’u kullanarak geliştirme süreçlerinizi daha verimli hale getirebilir ve test süreçlerini kolaylaştırabilirsiniz.