D ile günlük

Sunucu dizinlerini kullanma

Bu makalede, vibed kütüphanesi ile farklı sunucu dizinlerine nasıl erişebileceğimizi öğreneceğiz.

vibed kütüphanesi ile sunucu yolları

İlk yazdığımız örnekte, ekrana Merhaba Dünya yazdırmıştık.

Bu bölümde sunucu üzerinde farklı yollara yönlendirmenin nasıl yapılabileceğinden bahsedeceğiz.

Gene daha önceden olduğu gibi kiraz dizinine gelip kaynak dosya olan app.d kütüğünü herhangi bir metin düzenleyici ile açalım.

$ emacs source/app.d

İçine şunları girelim.

import vibe.vibe;

void kök(HTTPServerRequest istek, HTTPServerResponse yanıt)
{
    yanıt.writeBody("Merhaba, Dünya!");
}

void main()
{
    auto yolAtayıcı = new URLRouter;
    yolAtayıcı.get("/", &kök);

    auto ayarlar = new HTTPServerSettings;
    ayarlar.port = 8080;
    ayarlar.bindAddresses = ["::1", "127.0.0.1"];
    listenHTTP(ayarlar, yolAtayıcı);

    logInfo("Lütfen tarayıcınızla http://127.0.0.1:8080/ adresini açınız.");
    runApplication();
}

Burada bir önce yazdığımız uygulamaya göre yaptığımız tek değişiklik bir yol atayıcı kullandık.

Yol atayıcının görevi sunucunun kök dizinine gelen istekleri kök isimli işleve yönlendirmek.

Yazdığımız programı derlemek ve çalıştırmak için basitçe dub komutunu veriyoruz.

$ dub

Bu sefer çok fazla beklememize gerek yok. Çünkü daha önce kütüphaneyi derlemiştik. Şimdi sadece yazdığımız uygulama derleniyor.

Tekrar http://127.0.0.1:8080 adresini tarayıcı ile açtığınızda ekranda "Merhaba Dünya" yazdığını görebilirsiniz.

Önceki derste uygulamayı nasıl çalıştıracağınızdan bahsetmemiştik. Uygulamayı çalıştırmak için sadece terminalde ismini yazmanız yeterli.

$ ./kiraz

Uygulamayı sonlandırmak için ise Linux için Ctrl-C tuşlarına beraber basıyorsunuz. Diğer işletim sistemlerinde bu kısayollar farklı olabilir.

Yeni sunucu yolları eklemek

Her ne kadar tek bir sayfadan oluşan sunucu uygulamaları olsa da genellikle bir sunucu uygulaması farklı yollar kullanır.

Şimdi uygulamamıza yeni sunucu yolları ekleyelim. app.d kütüğünü tekrar açalım.

$ emacs source/app.d

İçine yeni eklemeler yapalım.

import vibe.vibe;

void kök(HTTPServerRequest istek, HTTPServerResponse yanıt)
{
    yanıt.writeBody("Merhaba, Dünya!");
}

void ali(HTTPServerRequest istek, HTTPServerResponse yanıt)
{
    yanıt.writeBody("Merhaba Ali!");
}

void ayşe(HTTPServerRequest istek, HTTPServerResponse yanıt)
{
    yanıt.writeBody("Merhaba Ayşe!");
}

void main()
{
    auto yolAtayıcı = new URLRouter;
    yolAtayıcı.get("/", &kök);
    yolAtayıcı.get("/ali", &ali);
    yolAtayıcı.get("/ayşe", &ayşe);

    auto ayarlar = new HTTPServerSettings;
    ayarlar.port = 8080;
    ayarlar.bindAddresses = ["::1", "127.0.0.1"];
    listenHTTP(ayarlar, yolAtayıcı);

    logInfo("Lütfen tarayıcınızda http://127.0.0.1:8080/ adresini açınız.");
    runApplication();
}

Uygulamayı dub ile tekrar derleyelim.

$ dub

Artık uygulamanızda http://127.0.0.1:8080/ali adresini açtığınızda ekrana :

Merhaba Ali!

http://127.0.0.1:8080/ayşe dizini açtığınızda ise :

Merhaba Ayşe!

yazdığını görebiliyor olmalısınız.

Eğer yaptığınız değişiklikleri git kullanarak takip etmek isterseniz, bir önceki derste git kullanımı ile ilgili bölümde anlatıldığı gibi yaptığınız değişiklikleri gönderebilirsiniz.

Bu durumda git init kullanmanıza gerek yok.

Yorumlar

yorum yaz

Yorum yaz

Henüz yorum yok.