Latest web development tutorials

استجابة الخادم JSP

استجابة استجابة هي في المقام الأول نتيجة لمرحلة ما بعد المعالجة JSP حاوية لتمرير مرة أخرى إلى العميل. يمكنك تعيين استجابة HTTP من متغيرات حالة والبيانات المرسلة، مثل كوكي، معلومات رأس HTTP إلى العميل.

رد نموذجي تبدو مثل هذا:

HTTP/1.1 200 OK
Content-Type: text/html
Header2: ...
...
HeaderN: ...
  (空行)
<!doctype ...>
<html>
<head>...</head>
<body>
...
</body>
</html>

سطر الحالة يحتوي على معلومات إصدار HTTP، مثل HTTP / 1.1، رمز حالة، مثل 200، وهناك رسالة قصيرة جدا المقابلة لرمز الحالة، مثل موافق.

ويلخص الجدول التالي رأس استجابة HTTP1.1 الجزء الأكثر فائدة لشبكة البرمجة سوف ترى في كثير من الأحيان لهم:

رأس استجابة وصف
سماح تنص على أن خادم يدعم طرق الطلب (GET، وظيفة، الخ)
ذاكرة التخزين المؤقت تحكم تحدد الوثيقة استجابة يمكن أن يكون مؤقتا الوضع الأمني. القيمة هي عادة العامة والخاصة أو لا مخبأ، وهلم جرا. يعني الجمهور أن وثائق يمكن أن يكون مؤقتا، الخاصة يعني أن الوثيقة ليست سوى خدمة مستخدم واحد فقط يستخدم مخبأ الخاص. لا ذاكرة التخزين المؤقت يعني أن الوثيقة لن يكون مؤقتا.
صلة متصفح القيادة سواء لاستخدام اتصالات HTTP المستمرة. وثيقة المتصفحات قيادة قيمة لا تستخدم اتصالات HTTP المستمرة، والحفاظ على الحياة وسائل استخدام الاتصالات المستمرة.
ترتيب المحتوى السماح للمتصفح يتطلب من المستخدم للرد على الاسم الذي يطلق المخزنة على القرص
المحتوى ترميز الصفحة قواعد نقل الترميز المحدد
محتوى اللغة وصف وثيقة اللغة المستخدمة، مثل داخلي وحمامات لنا ،، رو الخ
طول المحتوى ويبين عدد من وحدات البايت من الاستجابة. فقط في المتصفح لاستخدام المستمرة مفيدة من إذا (المحافظة على الحياة) اتصالات HTTP
نوع المحتوى نوع MIME وثيقة تبين أن استخدام
تنتهي عندما يتم تحديد منتهية الصلاحية وإزالتها من ذاكرة التخزين المؤقت
آخر تعديل المحددة في وثيقة تم آخر تعديل. يمكن للعملاء مؤقتا الوثائق وتوفر إذا كانت تم تعديلها منذ ذلك الحين في الطلبات اللاحقة رأس طلب
موقع في 300 ثانية، بما في ذلك جميع ديك رمز حالة استجابة للعنوان، سيقوم المتصفح إعادة الاتصال تلقائيا ثم باسترداد مستند جديد
تحديث إيضاح عدد المرات يطلب المتصفح تحديث الصفحة.
إعادة المحاولة ما بعد و 503 (الخدمة غير متوفرة) تستخدم معا لنقول للمستخدم متى طلب سوف تحصل على استجابة
تعيين ملف تعريف الارتباط المقابلة الكعكة يشير إلى الصفحة الحالية

الطبقة HttpServletResponse

كائن استجابة javax.servlet.http.HttpServletResponse هو مثيل للفئة. مثل الخادم يخلق كائنات طلب، فإنه سيتم إنشاء استجابة العميل.

يحدد الكائن استجابة عملية لإنشاء المعلومات واجهة رأس HTTP. باستخدام هذا الكائن، يمكن للمطورين إضافة ارتباط جديد أو الطابع الزمني، وكذلك رمز حالة HTTP، وهلم جرا.

يسرد الجدول التالي تستخدم لتعيين طرق رؤوس استجابة HTTP التي قدمت من قبل الطبقة HttpServletResponse:

SN طريقة ووصف
1 سلسلة encodeRedirectURL (سلسلة رابط)

على sendRedirect () طريقة URL يستخدم لترميز
2 سلسلة encodeURL (سلسلة رابط)

ترميز URL، وعنوان العودة الذي يحتوي على معرف جلسة
3 containsHeader منطقية (اسم سلسلة)

إرجاع رأس استجابة محددة إذا كان هناك
4 منطقية isCommitted ()

يعود ما إذا كان قد تم تقديم استجابة إلى العميل
5 addCookie باطل (كوكي كوكي)

تضيف ملف تعريف الارتباط المحدد إلى استجابة
6 addDateHeader باطل (اسم سلسلة تاريخ طويل )

إضافة رؤوس استجابة والتاريخ المحدد اسم
7 addHeader باطل (اسم سلسلة قيمة سلسلة )

إضافة رؤوس استجابة والقيم الاسم المحدد
8 addIntHeader باطل (اسم سلسلة القيمة الصحيحة )

إضافة رؤوس استجابة وقيمة كثافة مع اسم محدد
9 باطلة flushBuffer ()

أي محتويات ذاكرة التخزين المؤقت مكتوبة إلى العميل
10 إعادة تعيين باطل ()

مسح ذاكرة التخزين المؤقت أي أي بيانات، بما في ذلك رموز الحالة ورؤوس الاستجابة المختلفة
11 باطلة resetBuffer ()

ذاكرة التخزين المؤقت البيانات الأساسية واضحة، وليس بما في ذلك رؤوس استجابة ورموز الحالة
12 باطلة sendError (الباحث الشوري)

باستخدام رمز الحالة المحددة إرسالها إلى العميل استجابة خطأ، ثم مسح ذاكرة التخزين المؤقت
13 الفراغ sendError (الباحث الشوري، سلسلة جي اس )

باستخدام رمز الحالة المحددة ورسالة خطأ يتم إرسالها في الاستجابة إلى العميل
14 باطلة sendRedirect (سلسلة الموقع)

باستخدام عنوان URL المحدد إرسالها إلى العميل استجابة غير مباشرة مؤقتة
15 setBufferSize الفراغ (حجم كثافة العمليات)

تعيين حجم المخزن المؤقت من الجسم استجابة
16 setCharacterEncoding باطل (محارف سلسلة)

تحدد مجموعة رمز الاستجابة (MIME مجموعة أحرف)، مثل UTF-8
17 setContentLength باطل (ليون الباحث)

يحدد السيرفلتس HTTP ردا على طول المحتوى، استخدام أسلوب لتعيين HTTP رأس طول المحتوى
18 setContentType باطل (نوع سلسلة)

تعيين نوع محتوى ردا على ذلك، إذا لم تقدم ردا على ذلك، ثم
19 setDateHeader باطل (اسم سلسلة تاريخ طويل )

مع الاسم المحدد وتعيين قيمة اسم رأس استجابة ومحتويات
20 setHeader باطل (اسم سلسلة قيمة سلسلة )

مع الاسم المحدد وتعيين قيمة اسم رأس استجابة ومحتويات
21 setIntHeader باطلة (اسم سلسلة القيمة الصحيحة )

مع الاسم المحدد وتعيين قيمة اسم رأس استجابة ومحتويات
22 setLocale الفراغ (في الموضع لغة)

رد الإعداد المحلي، إذا لم يتم تقديم استجابة حتى الآن، ثم
23 setStatus باطل (الشوري كثافة العمليات)

تعيين رمز حالة الاستجابة

HTTP رأس استجابة البرنامج مثال

يستخدم المثال التالي setIntHeader () طريقة وsetRefreshHeader () طريقة لمحاكاة رقمية على مدار الساعة:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ page import="java.io.*,java.util.*" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>本教程(w3big.com)</title>
</head>
<body>
<h2>自动刷新实例</h2>
<%
   // 设置每隔5秒自动刷新
   response.setIntHeader("Refresh", 5);
   // 获取当前时间
   Calendar calendar = new GregorianCalendar();
   String am_pm;
   int hour = calendar.get(Calendar.HOUR);
   int minute = calendar.get(Calendar.MINUTE);
   int second = calendar.get(Calendar.SECOND);
   if(calendar.get(Calendar.AM_PM) == 0)
      am_pm = "AM";
   else
      am_pm = "PM";
   String CT = hour+":"+ minute +":"+ second +" "+ am_pm;
   out.println("当前时间: " + CT + "\n");
%>
</body>
</html>

حفظ الإنجليزية main.jsp رمز أعلاه، ثم الوصول إليه من خلال متصفح. سيعرض كل خمس ثوان في الوقت الحالي.

يمكننا أن ننظر إلى الرسم البياني عرض المتحركة التالية:

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