⚓
Liman Eklenti Geliştirme
  • Hoşgeldiniz!
  • Başlangıç
    • Geliştirme Ortamı Kurulumu
    • Yeni Eklenti Oluşturma
  • Genel Bilgiler
    • Dosya ve Dizin Yapısı
    • Kontrolcüler
    • Rotalar
    • Veritabanı Mantığı
    • Bileşen Mantığı
    • Paket Bağımlılığı Eklemek
    • PHP Yardımcı Fonksiyonları
    • JS Yardımcı Fonksiyonları
  • Geliştirme
    • Sunucuda Komut Çalıştırmak
    • Sunucuda Betik Çalıştırmak
    • Dosya Yükleme, İndirme
    • Protokol Bağlantıları (LDAP, SMB)
  • Arayüz Elemanları
    • Tablo
    • Modal
    • Dosya Yükleme
    • Görev (Task)
  • İleri Seviye
    • Toolkit Kullanımı
    • Yerelleştirme
    • Composer
    • DB Kütüphanesi
Powered by GitBook
On this page
  • Rota Nedir?
  • Eklentilerde Rotalar

Was this helpful?

Export as PDF
  1. Genel Bilgiler

Rotalar

Eklentilerde rotaların görevi tam olarak nedir, ne yapar?

Rota Nedir?

Routing, request işlemlerinde kullanılabilecek, karmaşık kuralları kolaylıkla yönetebilme özelliği (GET, POST gibi HTTP methods, middleware gibi) ile öne çıkar. Routing işleminde işlemler route’lar (path) üzerinden yürütülür. Bu sayede URL eşleştirme işlemleri farklı amaçlarla gerçekleştirilebilmektedir. Bu işlem farklı bir şekilde ele alınsa da (client request) kullanıcılar/ziyaretçiler ve arama motorları URL’lerdeki gibi web sitesinde ve/veya uygulamasında anlamlı sonuçlara (endpoint) ulaşabilirler. Örneğin, /inbox/1/msg/2 gibi bir URL’de ilk path /inbox sonrası ise bu path’in iç yapıları olarak (routing tree) nitelendirilebilirler.

Biz Liman içerisinde rota işlemlerine bu kadar karmaşık yaklaşmıyoruz. Gelin nasıl incelediğimize bakalım.

Eklentilerde Rotalar

Biz eklentilerde rotalara daha çok REST mantığıyla baktığımızdan ve kod karmaşıklığını düşürmek istediğimizden Laravel'deki gibi kodu uzatmamaktayız.

Liman eklentilerinde rotalar sadece iki argüman alır.

  • Endpoint

  • Kontrolcü ismi @ Çağırılacak fonksiyon

Gelin örnek bir rota dosyasını inceleyelim.

routes.php
return [
    "index" => "HomeController@index",
    
    // Hostname Settings
    "get_hostname" => "HostnameController@get",
    "set_hostname" => "HostnameController@set",

    // Systeminfo
    "get_system_info" => "SystemInfoController@get",
    "install_lshw" => "SystemInfoController@install",
];

Görüleceği üzere eklenti rotalarımız POST, GET, PUT, DELETE... gibi argümanlar almamaktadır. Eklentilerde kontrolcüleri API mantığı ile kullandığımız için ihtiyaç duymadık.

Bir rota tanımlamak için aşağıdaki gibi bir tanımlama yapmanız gerekmektedir.

    "<ROTA_ISMI>" => "<CONTROLLER_ISMI>@<CAGIRILACAK_FONKSIYON>"

Yukarıdaki tarzda tanımlama yaptığınızda bunu Javascript yardımcı fonksiyonlarımızdan request ile API("<ROTA_ISMI>") şeklinde çağırabilir. Bu çağrıdan sonra sorunsuz şekilde response alacaksınız ve bunu Javascript ile kullanarak ister bir içeriği manipüle edebilir, ister başka bir içerik oluşturabilirsiniz.

PreviousKontrolcülerNextVeritabanı Mantığı

Last updated 3 years ago

Was this helpful?

PHP Yardımcı Fonksiyonları