موصى به: قالب صفحة الويب: طلب كائن مدمج ASP بدءًا من هذه المقالة ، يبدأ المؤلف بالكائنات المدمجة في ASP وتحليل ميزات وطرق الكائنات المدمجة الستة ومكونات ASP المختلفة لك بالتفصيل. قبل البدء رسميًا في تعلم الكائنات ومكونات ASP المدمجة ، دعونا أولاً نفهم بعض المفاهيم الأساسية ، والتي ستكون ذات مساعدة كبيرة لتعلمك المستقبلي. يرجى الاطلاع على الجدول أدناه: ما هو الكائن؟ لا يشير إلى رفيق الذكور أو الإناث الذي تحبه. في الموقع
الفرق بين الحصول على نموذج التقديم في برنامج ASP التعليمي
هناك 5 اختلافات بين طرق GET و Post
1. الحصول على الحصول على بيانات من الخادم ، والنشر هو نقل البيانات إلى الخادم.
2. احصل على إضافة قائمة انتظار بيانات المعلمة إلى عنوان URL المشار إليه من خلال سمة الإجراء للنموذج المقدم. تتوافق القيمة مع كل حقل في النموذج واحد تلو الآخر ، ويمكن رؤيته في عنوان URL. تتمثل Post في تمرير كل حقل في النموذج ومحتوياته في رأس HTML من خلال آلية Post HTTP لنقله إلى عنوان عنوان URL المشار إليه بواسطة سمة الإجراء. لا يمكن للمستخدمين رؤية هذه العملية.
3. لأسلوب GET ، يستخدم الخادم request.quareString للحصول على قيمة المتغير. بالنسبة لطريقة POST ، يستخدم الخادم request.form للحصول على البيانات المقدمة.
4. كمية البيانات التي يتم نقلها عن طريق الحصول على صغير ولا يمكن أن يكون أكبر من 2 كيلو بايت. كمية البيانات المنقولة عن طريق المنشور كبير ، ويتم تقصيرها عمومًا لتكون غير مقيدة. ولكن من الناحية النظرية ، فإن الحد الأقصى للمبلغ في IIS4 هو 80 كيلو بايت و 100 كيلو بايت في IIS5.
5. الحصول على الأمن منخفض للغاية وبعد الأمن مرتفع.
طلب HTTP: الفرق بين أساليب GET و POST
يحدد HTTP طرقًا مختلفة للتفاعل مع الخادم ، والطرق الأساسية هي الحصول على ونشرها. في الواقع ، Get Works لمعظم الطلبات ، بينما يتم حجز Post لتحديث الموقع فقط. وفقًا لمواصفات HTTP ، يتم استخدام GET لاكتساب المعلومات ويجب أن يكون آمنًا ومستجيبًا. الآمن يعني أن العملية تستخدم لاكتساب المعلومات بدلاً من تعديل المعلومات. بمعنى آخر ، يجب ألا يكون للطلبات عمومًا آثارًا جانبية. يعني التعرف على أن الطلبات المتعددة لنفس عنوان URL يجب أن تعيد نفس النتيجة. التعريف الكامل ليس صارمًا كما يبدو. في الأساس ، الهدف هو أنه عندما يفتح المستخدم رابطًا ، يمكن أن تكون مقتنعًا بأن المورد لم يتغير من منظورها. على سبيل المثال ، يتم تحديث الصفحات الأمامية لمواقع الأخبار باستمرار. على الرغم من أن الطلب الثاني يعيد مجموعة مختلفة من الأخبار ، إلا أن العملية لا تزال تعتبر آمنة ومستجوبة لأنها تعيد دائمًا الأخبار الحالية. والعكس صحيح. طلبات النشر ليست بهذه السهولة. يشير Post إلى طلب قد يغير المورد على الخادم. لا يزال يأخذ موقع الأخبار كمثال ، يجب تنفيذ تعليقات القراء للمقالة من خلال طلب البريد ، لأن الموقع مختلف بالفعل بعد تقديم التعليقات التوضيحية (على سبيل المثال ، يظهر التعليق التوضيحي أدناه المقالة) ؛
عندما يرتفع النموذج ، إذا لم يتم تحديد الطريقة ، فإنه يتخلف عن الطلب. سيتم إلحاق البيانات المقدمة في النموذج بعد عنوان URL ، منفصلة عن عنوان URL. يتم إرسال الأحرف الأبجدية الرقمية كما هو ، ولكن يتم تحويل المساحات إلى + علامات ، ويتم تحويل الرموز الأخرى إلى ٪ XX ، حيث XX هي قيمة ASCII (أو ISO LATIN-1) للرمز في السداسي. يتم وضع البيانات المقدمة بواسطة طلب GET في رأس بروتوكول طلب HTTP ، بينما يتم وضع البيانات المقدمة من POST في بيانات الكيان ؛ يمكن أن يكون للبيانات المقدمة من طريقة GET فقط 1024 بايت ، في حين أن Post ليس له مثل هذا الحد.
ما هو الفرق بين استخدام المنشور والحصول على الشكل
في النموذج ، يمكنك استخدام البريد أو الحصول عليه. انهم جميعا القيم القانونية للطريقة. ومع ذلك ، هناك اختلافان على الأقل في استخدام البريد والحصول على طرق:
1. طريقة الحصول على إدخال المستخدم من خلال طلب عنوان URL. طريقة البريد في شكل آخر.
2. عند الإرسال في وضع GET ، تحتاج إلى استخدام request.quareString للحصول على قيمة المتغير. عند التقديم في وضع النشر ، يجب عليك الوصول إلى المحتوى المقدم من خلال request.form.
ألق نظرة فاحصة على الرمز أدناه. يمكنك تشغيله لتجربة ذلك:
شفرة
ما يلي هو المحتوى المقتبس:
<!-الشكلان لهما سمات طريقة مختلفة فقط->
<form action = getPost.php tutorial method = get>
<نوع الإدخال = اسم النص = قيمة النص = Hello World> </pected>
<نوع الإدخال = إرسال القيمة = method = get> </pected>
</form>
<br>
<form action = getPost.php method = post>
<نوع الإدخال = اسم النص = قيمة النص = Hello World> </pected>
<نوع الإدخال = إرسال القيمة = method = post> </pected>
</form>
<br>
<br>
<؟ إذا طلب
السلسلة التي تم تمريرها من خلال طريقة GET هي: <b> <؟ = request.querystring (text)؟> </b> <br>
<؟ تنتهي إذا؟>
<؟ إذا طلب .form (نص) <> ثم؟>
السلسلة التي تم تمريرها من خلال طريقة المنشور هي: <b> <؟ = request.form (text)؟> </b> <br>
<؟ تنتهي إذا؟>
يوضح
احفظ الكود أعلاه مثل getPost.asp ، ثم قم بتشغيله ، أولاً اختبر طريقة النشر. في هذا الوقت ، لم يتغير عنوان URL للمتصفح كثيرًا ، والنتيجة التي تم إرجاعها هي:
السلسلة التي تم تمريرها من خلال طريقة البريد هي: Hello World
ثم اختبار إرسال باستخدام طريقة GET. يرجى ملاحظة أن عنوان URL للمتصفح يصبح:
http: //localhost/general/form/getpost.php؟ text = hello+world
والنتيجة التي تم إرجاعها هي:
السلسلة التي تم تمريرها من خلال طريقة GET هي: Hello World
أخيرًا ، أرسلها من خلال طريقة البريد ، ولا يزال عنوان URL للمتصفح:
http: //localhost/general/form/getpost.php؟ text = hello+world
وتصبح النتيجة التي تم إرجاعها:
السلسلة التي تم تمريرها من خلال طريقة GET هي: Hello World
السلسلة التي تم تمريرها من خلال طريقة البريد هي: Hello World
تَلمِيح
قد يؤدي إرسال البيانات من خلال الأساليب الحصول على مشكلات أمان. على سبيل المثال ، صفحة تسجيل الدخول. عند إرسال البيانات من خلال طريقة GET ، سيظهر اسم المستخدم وكلمة المرور على عنوان URL. لو:
1. يمكن تخزين صفحة تسجيل الدخول بواسطة المتصفح ؛
2. يمكن للآخرين الوصول إلى آلة العميل.
بعد ذلك ، يمكن للآخرين قراءة حساب وكلمة مرور هذا العميل من تاريخ المتصفح. لذلك ، في بعض الحالات ، يمكن أن تجلب طريقة الحصول على مشكلات أمنية خطيرة.
اقتراح
في النموذج ، يوصى باستخدام طريقة البريد.
مشاركة: شرح مفصل لاستخدام طريقة مفتوحة لـ XMLHTTP افتح إنشاء طلب HTTP جديد وحدد طريقة بناء جملة المعلومات والتحقق من هذا الطلب من هذا الطلب OxmlHttprequest.open (Bstrmethod ، Bstrurl ، varasync ، Bstruser ، Bstrapsword) ؛ المعلمات BSTRMethod HTTP ، مثل: post ، get ، وضع و propfind. حالة غير حساسة. يمكن أن يكون عنوان عنوان URL المطلوب من قبل Bstrurl