Asp Dersleri 10 | Buffer Hakkında

Buffer Hakkında

Sayfa Tamponlaması ASP'de kullanılan ilginç bir özelliktir. Sayfa Tamponlanması, response nesnesinin bir özelliğidir. Bize getirdiği fayda ise; Client tarafı, sunucudan bilgiyi talep ederken bize ne aldığını kontrol ettirir, yani denetletir. Response nesnesine bağlı çalışan Buffer özelliğinin default değeri daima False dir. Değer bu iken, yani false iken bir sayfadaki ASP scripti oluştuğu gibi sunulur, yani script adım adım uygulanarak sayfaya yapması isteneni uygular. Fakat biz Buffer değerini True olarak atarsak, Script tamamen çalıştırlmadan daha doğrusu tamamlanmadan client tarafına bilgi sunulmaz. Kullanım şekli;

<% response.Buffer = True %>

Dikkat edilmesi gereken bir husus, bu tanımlamanın sayfadaki Html taglarının üstünde yer alıyor olması gerekir. Aksi takdire hata alırsınız. Bu arada hemen belirtelim, bu özellik ile Flush özelliğini beraber kullanabiliriz. Flush, bir script işleminde elde edilecek sonuçlar sayfaya yazdırılana kadar daha önce istemci tarafına yollamak istediğimiz bilgileri gönderir. Bu da bize bir nevi hız kazandırır. Buffer özelliğin kullanılmasının en iyi örneğini cookielerde verebiliriz. Burada sunucu ve istemci ile bilgi alışverişi esnasında oluşabilecek hataları Buffer özelliği ile önleyebiliriz. Buna kısa ve basit bir örnek vermek gerekirse:

Diyelim, bir sayfanız var ve buraya kimsenin ulaşmasını istemiyorsunuz. Hali ile şifre koyarsınız.

<%
response.Expires = 1000
response.Buffer = True ' işte Buffer özelliği burda devreye giriyor !
session("UserLoggedIn") = ""
if Request.Form("login") = "true" then
CheckLogin
else
ShowLogin
end if
Sub ShowLogin
%>

Bakınız sayfadaki scripte (yukarıda) bir istek geliyor. Nedir? parolayı kontrol et! yani Scriptin bu kısmı formdan gelen bilgiyi aşağıdaki scripte paslıyor, ve oda şifrenin doğru olup olmadığını kontrol ediyor. İşte burda " Buffer =True " olayı kontrol ediyor

%>
Sub CheckLogin
if LCase(Request.Form("kullaniciadi")) = "AliVeliKonya" And LCase(Request.Form
("sifre")) = "123456" then
session("UserLoggedIn") = "true"
response.Redirect "falanca.asp"
else%>
<%
response.write("şifre geçersiz..")ShowLogin
end if
end Sub
%>

Bu tabii gayet basit ve kısa bir script. Burada sadece bir örnek teşkil etsin diye verdim. Bu olay daha karmaşık ve uzun scriptlerde daha da belirgin bir şekilde rol oynayacaktır.

İsteklerinizi Bizlere Aktarmak İçin İletişim Formunu Doldurunuz

Geri İleri