<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                # JSP服務器響應 Response響應對象主要將JSP容器處理后的結果傳回到客戶端。可以通過response變量設置HTTP的狀態和向客戶端發送數據,如Cookie、HTTP文件頭信息等。 一個典型的響應看起來就像下面這樣: ~~~ HTTP/1.1 200 OK Content-Type: text/html Header2: ... ... HeaderN: ... (空行) <!doctype ...> <html> <head>...</head> <body> ... </body> </html> ~~~ 狀態行包含HTTP版本信息,比如HTTP/1.1,一個狀態碼,比如200,還有一個非常短的信息對應著狀態碼,比如OK。 下表摘要出了HTTP1.1響應頭中最有用的部分,在網絡編程中您將會經常見到它們: | **響應頭** | **描述** | | --- | --- | | Allow | 指定服務器支持的request方法(GET,POST等等) | | Cache-Control | 指定響應文檔能夠被安全緩存的情況。通常取值為?**public****,****private**?或**no-cache**?等等。 Public意味著文檔可緩存,Private意味著文檔只為單用戶服務并且只能使用私有緩存。No-cache 意味著文檔不被緩存。 | | Connection | 命令瀏覽器是否要使用持久的HTTP連接。**close****值**?命令瀏覽器不使用持久HTTP連接,而keep-alive 意味著使用持久化連接。 | | Content-Disposition | 讓瀏覽器要求用戶將響應以給定的名稱存儲在磁盤中 | | Content-Encoding | 指定傳輸時頁面的編碼規則 | | Content-Language | 表述文檔所使用的語言,比如en, en-us,,ru等等 | | Content-Length | 表明響應的字節數。只有在瀏覽器使用持久化 (keep-alive) HTTP 連接時才有用 | | Content-Type | 表明文檔使用的MIME類型 | | Expires | 指明啥時候過期并從緩存中移除 | | Last-Modified | 指明文檔最后修改時間。客戶端可以 緩存文檔并且在后續的請求中提供一個?**If-Modified-Since**請求頭 | | Location | 在300秒內,包含所有的有一個狀態碼的響應地址,瀏覽器會自動重連然后檢索新文檔 | | Refresh | 指明瀏覽器每隔多久請求更新一次頁面。 | | Retry-After | 與503 (Service Unavailable)一起使用來告訴用戶多久后請求將會得到響應 | | Set-Cookie | 指明當前頁面對應的cookie | * * * ## HttpServletResponse類 response 對象是 javax.servlet.http.HttpServletResponse 類的一個實例。就像服務器會創建request對象一樣,它也會創建一個客戶端響應。 response對象定義了處理創建HTTP信息頭的接口。通過使用這個對象,開發者們可以添加新的cookie或時間戳,還有HTTP狀態碼等等。 下表列出了用來設置HTTP響應頭的方法,這些方法由HttpServletResponse 類提供: | **S.N.** | **方法****&****描述** | | --- | --- | | 1 | **String encodeRedirectURL(String url)** 對sendRedirect()方法使用的URL進行編碼 | | 2 | **String encodeURL(String url)** 將URL編碼,回傳包含Session ID的URL | | 3 | **boolean containsHeader(String name)** 返回指定的響應頭是否存在 | | 4 | **boolean isCommitted()** 返回響應是否已經提交到客戶端 | | 5 | **void addCookie(Cookie cookie)** 添加指定的cookie至響應中 | | 6 | **void addDateHeader(String name, long date)** 添加指定名稱的響應頭和日期值 | | 7 | **void addHeader(String name, String value)** 添加指定名稱的響應頭和值 | | 8 | **void addIntHeader(String name, int value)** 添加指定名稱的響應頭和int值 | | 9 | **void flushBuffer()** 將任何緩存中的內容寫入客戶端 | | 10 | **void reset()** 清除任何緩存中的任何數據,包括狀態碼和各種響應頭 | | 11 | **void resetBuffer()** 清除基本的緩存數據,不包括響應頭和狀態碼 | | 12 | **void sendError(int sc)** 使用指定的狀態碼向客戶端發送一個出錯響應,然后清除緩存 | | 13 | **void sendError(int sc, String msg)** 使用指定的狀態碼和消息向客戶端發送一個出錯響應 | | 14 | **void sendRedirect(String location)** 使用指定的URL向客戶端發送一個臨時的間接響應 | | 15 | **void setBufferSize(int size)** 設置響應體的緩存區大小 | | 16 | **void setCharacterEncoding(String charset)** 指定響應的編碼集(MIME字符集),例如UTF-8 | | 17 | **void setContentLength(int len)** 指定HTTP servlets中響應的內容的長度,此方法用來設置 HTTP Content-Length 信息頭 | | 18 | **void setContentType(String type)** 設置響應的內容的類型,如果響應還未被提交的話 | | 19 | **void setDateHeader(String name, long date)** 使用指定名稱和日期設置響應頭的名稱和日期 | | 20 | **void setHeader(String name, String value)** 使用指定名稱和值設置響應頭的名稱和內容 | | 21 | **void setIntHeader(String name, int value)** 指定 int 類型的值到 name 標頭 | | 22 | **void setLocale(Locale loc)** 設置響應的語言環境,如果響應尚未被提交的話 | | 23 | **void setStatus(int sc)** 設置響應的狀態碼 | * * * ## 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>JSP教程(cms.yiniuedu.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,然后通過瀏覽器訪問它。它將會每隔5秒顯示一下系統當前時間。 我們可以看一下下圖變化: ![](http://h.yiniuedu.com/d6863064926a2505b747503d13301131) 您也可以自己動手修改以上代碼,試試使用其他的方法,將能得到更深的體會。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看