هل يجب استخدام Request.Params بدلا من القيام صراحة Request.Form؟

StackOverflow https://stackoverflow.com/questions/1426976

  •  07-07-2019
  •  | 
  •  

سؤال

ولقد تم استخدام Request.Form عن كل ما عندي من التعليمات البرمجية. وإذا كنت بحاجة إلى سلسلة استعلام مواقع المعلومات أنا ضربت هذا بشكل واضح جدا. أنه جاء في مراجعة التعليمات البرمجية التي يجب أن تستعمل على الأرجح جمع بارامس بدلا من ذلك.

واعتقد انها كانت من أفضل الممارسات، لتصل إلى جمع المناسب مباشرة. أنا أبحث عن بعض التعزيز الى جانب واحد أو الآخر من ذي الحجة.

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

المحلول

ومن أكثر أمنا لاستخدام Request.Form. هذا سوف يمنع المستخدمين من "تجارب" مع معلمات النموذج نشر ببساطة عن طريق تغيير URL. استخدام Request.Form لا يجعل هذا آمنة ل "الهاكرز الحقيقية"، ولكن IMHO أنه من الأفضل استخدام مجموعة نموذج.

نصائح أخرى

وباستخدام خصائص تحت الطلب كنت تضييق استرجاع لجمع سليم (والذي هو شيء جيد للقراءة والأداء). أنا أعتبر نهجكم أن تكون أفضل الممارسات ومتابعته نفسي.

ولقد استخدمت دائما     Request.Form ( "بارام") أو     Request.QueryString ( "بارام")

وهذا هو محض وصولا الى بناء الجملة التي هي أسهل للقراءة. انا اشك هناك تأثير على الأداء.

والمرة الوحيدة التي يمكنني استخدام Request.Params بدلا من Form أو Querystring هو إذا أنا لا أعرف ما إذا كانت الطريقة التي سيتم تمريرها المعلمات في.

لوضع ذلك في السياق، في 10 سنوات ولقد استخدمت Request.Params في غضب مرة واحدة فقط:)

واللطف،

D

وأعتقد أنه من الأفضل استخدام نموذج ومجموعات سلسلة استعلام مواقع المعلومات بشكل واضح إلا إذا كنت تحاول صراحة إلى تحديد السلوك مرونة في التطبيق الخاص بك كما هو الحال في نموذج بحث حيث قد ترغب في الحصول على معلمات البحث للتعريف في URL أو حفظها في ملفات تعريف الارتباط مثل تفضيلات ترقيم الصفحات.

وأود أن استخدام Request.Form وRequest.QueryString صراحة. والسبب هو أن الاثنين لا interchangable. يستخدم سلسلة الاستعلام عن HTTP الحصول على طلبات ومتغيرات النموذج لطلبات HTTP آخر.

طلبات

والحصول تنطبق عادة حيث كنت تطلب البيانات، على سبيل المثال القيام بعملية بحث جوجل، والبحث عن الكلمات هي في سلسلة الاستعلام. وظيفة هي عندما تقوم بإرسال البيانات إلى خادم الويب للمعالجة أو تخزين. لذلك عندما أقول أن الاثنين لا interchangable أعني أنه لا يمكنك تغيير الصفحة من استخدام GET إلى ما بعد دون كسر وظيفة.

وهكذا IMHO، تنفيذ الصفحة يمكن أن تعكس بوضوح حقيقة أن كنت تنوي ذلك ليتم استدعاؤها من قبل GET أو طلب POST.

و/ بيت

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