الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

اللعب مع URL

بدأه باسل بوشناق في 27 أكتوبر 2012 · 1 رد · 553 مشاهدة · في ASP.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

مقدمة:

URL أو Uniform Resource Locator ، هو عبارة عن سلسلة نصية تستخدم بواسطة متصفح الانترنت أو برامج أخرى ليقوم بتعريف مصادر شبكة الانترنت على الانترنت، والمصادر هي عبارة عن ملفات والتي تكون صفحات عادية أو صور أو حتى برامج...

ومهمة URL تكمن في أنه يحتوي على ثلاثة مكونات ضمن سلسلته النصية:

1- بروتوكول الشبكة

2- عنوان الموقع المضيف

3- موقع الملفات المطلوبة

وتكون مرتبة على الشكل التالي:

protocol :// host / location

مثلاً :

http://www.arabteam2000-forum.com/index.php

من الملاحظ أن ASP.NET توفر بيئة عمل رائعة وحسب طلب الزبون في التعامل مع URL فهناك أساليب كثيرة وسأتطرق للبعض منها كالتي تساعد بالتمويه حيث سيكون URL المستخدم في نقل البيانات شيء و URL الظاهر شيء آخر تماماً.

قبل البدء يجب الحصول على عنوان الصفحة الحالي وقد يلزم للتأكد من النتائج:

string url = HttpContext.Current.Request.Url.AbsoluteUri;

النتيجة

http://localhost:1302/TRAIN/Default.aspx

string path = HttpContext.Current.Request.Url.AbsolutePath;

النتيجة

/TRAIN/Default.aspx

string host = HttpContext.Current.Request.Url.Host;

النتيجة

Localhost

الطريقة الأولى BeginRequest :

يحتوي المشروع Train1 على Default.aspx ، Default2.aspx ، Global.aspx

الكود التالي في Global.asax

void Application_BeginRequest(object sender, EventArgs e)
    {
 HttpContext MyContext = HttpContext.Current;
        string CurrentURL_Path = Request.Path.ToLower();

        if (CurrentURL_Path.StartsWith("/train1/default.aspx"))
        {

            MyContext.RewritePath("Default2.aspx");
        }
    }

من الطبيعي عند فتح المشروع فإنه يذهب تلقائياً إلى Default.aspx لكن BeginRequest سيعمل عند بدأ عملية الطلب للصفحة، وسيفحص شرط عملية طلب Default.aspx وإذا تحقق سيقوم بالانتقال تلقائياً إلى Default2.aspx والجميل في الموضوع أن الطلب السابق لـ Default.aspx هو الذي سيظهر كعنوان لأي صفحة نكون موجودين بها وفي حالتنا هي Default2.aspx، فنكون موجودين في صفحة والعنوان الظاهر لصفحة آخرى.

ملاحظة : انتبه لحالة الأحرف عند كتابة الشرط.

train1.rar

تم تعديل هذه المشاركة بواسطة باسل بوشناق في 27 أكتوبر 2012 في 13:17

#2

فكره جميله مقتبسة من MVC

مواضيع مشابهة