سؤال

أنا أستخدم التعليمات البرمجية في Application_BeingRequest () معالج Global.asax للقيام ببعض إعادة كتابة عنوان URL البدائي للغاية. هذا يعمل بشكل جيد ، ومع ذلك أواجه مشكلات تجلب عنوان URL المعاد كتابته في JavaScript.

لذا ، فإن استخدام url إعادة كتابة "www.mydomain.com/dothis" يصبح "www.mydomain.com/؟action=dothis" على جانب الخادم. باستخدام asp.net و request.querystring ["Action"] ، أحصل على النتيجة المتوقعة لـ "dothis". JavaScript ، بالطبع ، لا يزال يرى "www.mydomain.com/dothis" لأن هذا هو ما يتم عرضه في المتصفح.

لا أفترض أن هناك طريقة لجافا سكريبت لرؤية عنوان URL الفعلي للصفحة ، على الرغم من أنه لم يتم عرضه في شريط العناوين؟

هل كانت مفيدة؟

المحلول

ما يحدث على الخادم خارج واجهة HTTP غير مرئي لـ UA إذا لم تخبره بشكل صريح.

تحدث إعادة الكتابة على الخادم قبل إعادة توجيه الطلب إلى المعالج المناسب.

يمكنك إخبار UA هذا بعدة طرق (اسأل Tim Toady ^^). التحكم في النموذج المخفي ، متغير javaScript لذكر عدد قليل. هذا هو OFC إذا كان إطار العمل/الخادم يدعم هذا.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top