亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JSP > 正文

訪問CGI變量

2024-09-05 00:17:58
字體:
來源:轉載
供稿:網友

6.1 CGI變量概述

   如果你是從傳統的CGI編程轉而學習Java Servlet,或許已經習慣了“CGI變量”這一概念。CGI變量匯集了各種有關請求的信息:

部分來自HTTP請求命令和請求頭,例如Content-Length頭;
部分來自Socket本身,例如主機的名字和IP地址;
也有部分與服務器安裝配置有關,例如URL到實際路徑的映射。
   6.2 標準CGI變量的Servlet等價表示

   下表假定request對象是提供給doGet和doPost方法的HttpServletRequest類型對象。 CGI變量  含義  從doGet或doPost訪問  
AUTH_TYPE  如果提供了Authorization頭,這里指定了具體的模式(basic或者digest)。  request.getAuthType()  
CONTENT_LENGTH  只用于POST請求,表示所發送數據的字節數。  嚴格地講,等價的表達方式應該是String.valueOf(request.getContentLength())(返回一個字符串)。但更常見的是用request.getContentLength()返回含義相同的整數。  
CONTENT_TYPE  如果指定的話,表示后面所跟數據的類型。  request.getContentType()  
DOCUMENT_ROOT  與http://host/對應的路徑。  getServletContext().getRealPath("/")
注意低版本Servlet規范中的等價表達方式是request.getRealPath("/")。

HTTP_XXX_YYY  訪問任意HTTP頭。  request.getHeader("Xxx-Yyy")  
PATH_INFO  URL中的附加路徑信息,即URL中Servlet路徑之后、查詢字符串之前的那部分。  request.getPathInfo()  
PATH_TRANSLATED  映射到服務器實際路徑之后的路徑信息。  request.getPathTranslated()  
QUERY_STRING  這是字符串形式的附加到URL后面的查詢字符串,數據仍舊是URL編碼的。在Servlet中很少需要用到未經解碼的數據,一般使用getParameter訪問各個參數。  request.getQueryString()  
REMOTE_ADDR  發出請求的客戶機的IP地址。  request.getRemoteAddr()  
REMOTE_HOST  發出請求的客戶機的完整的域名,如java.sun.com。如果不能確定該域名,則返回IP地址。  request.getRemoteHost()  
REMOTE_USER  如果提供了Authorization頭,則代表其用戶部分。它代表發出請求的用戶的名字。  request.getRemoteUser()  
REQUEST_METHOD  請求類型。通常是GET或者POST。但偶爾也會出現HEAD,PUT, DELETE,OPTIONS,或者 TRACE.  request.getMethod()  
SCRIPT_NAME  URL中調用Servlet的那一部分,不包含附加路徑信息和查詢字符串。  request.getServletPath()  
SERVER_NAME  Web服務器名字。  request.getServerName()  
SERVER_PORT  服務器監聽的端口。  嚴格地說,等價表達應該是返回字符串的String.valueOf(request.getServerPort())。但經常使用返回整數值的request.getServerPort()。  
SERVER_PROTOCOL  請求命令中的協議名字和版本(即HTTP/1.0或HTTP/1.1)。  request.getProtocol()  
SERVER_SOFTWARE  Servlet引擎的名字和版本。  getServletContext().getServerInfo()  


   6.3 實例:讀取CGI變量

   下面這個Servlet創建一個表格,顯示除了HTTP_XXX_YYY之外的所有CGI變量。HTTP_XXX_YYY是HTTP請求頭信息,請參見上一節介紹。

   ShowCGIVariables.java
package hall;

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.util.*;

public class ShowCGIVariables extends HttpServlet {
  public void doGet(HttpServletRequest request,
                    HttpServletResponse response)
      throws ServletException, IOException {
    response.setContentType("text/html");
    PrintWriter out = response.getWriter();
    String[][] variables =
      { { "AUTH_TYPE", request.getAuthType() },
        { "CONTENT_LENGTH", String.valueOf(request.getContentLength()) },
        { "CONTENT_TYPE", request.getContentType() },
        { "DOCUMENT_ROOT", getServletContext().getRealPath("/") },
        { "PATH_INFO", request.getPathInfo() },
        { "PATH_TRANSLATED", request.getPathTranslated() },
        { "QUERY_STRING", request.getQueryString() },
        { "REMOTE_ADDR", request.getRemoteAddr() },
        { "REMOTE_HOST", request.getRemoteHost() },
        { "REMOTE_USER", request.getRemoteUser() },
        { "REQUEST_METHOD", request.getMethod() },
        { "SCRIPT_NAME", request.getServletPath() },
        { "SERVER_NAME", request.getServerName() },
        { "SERVER_PORT", String.valueOf(request.getServerPort()) },
        { "SERVER_PROTOCOL", request.getProtocol() },
        { "SERVER_SOFTWARE", getServletContext().getServerInfo() }
      };
    String title = "顯示CGI變量";
    out.println(ServletUtilities.headWithTitle(title) +
                "<BODY BGCOLOR=\"#FDF5E6\">\n" +
                "<H1 ALIGN=CENTER>" + title + "</H1>\n" +
                "<TABLE BORDER=1 ALIGN=CENTER>\n" +
                "<TR BGCOLOR=\"#FFAD00\">\n" +
                "<TH>CGI Variable Name<TH>Value");
    for(int i=0; i<variables.length; i++) {
      String varName = variables[i][0];
      String varValue = variables[i][1];
      if (varValue == null)
        varValue = "<I>Not specified</I>";
      out.println("<TR><TD>" + varName + "<TD>" + varValue);
    }
    out.println("</TABLE></BODY></HTML>");
  }

  public void doPost(HttpServletRequest request,
                     HttpServletResponse response)
      throws ServletException, IOException {
    doGet(request, response);
  }
}
 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产日韩在线精品av| 日韩美女免费视频| 久久精品中文字幕免费mv| 日韩电影免费观看在线观看| 国产精品一区二区三区久久| 日韩欧美国产成人| 国产热re99久久6国产精品| 国产精品一区二区3区| 精品国产户外野外| 国产精品免费在线免费| 亚洲奶大毛多的老太婆| 国产精品无码专区在线观看| 日韩精品视频在线观看免费| 亚洲影院色在线观看免费| 亚洲最大av网| 色爱精品视频一区| 欧美成人中文字幕在线| 中文字幕一区二区三区电影| 91欧美精品成人综合在线观看| 国产成人久久久精品一区| 欧美激情精品久久久久久| 亚洲日本欧美日韩高观看| 欧美日韩在线一区| 欧美日韩国产成人高清视频| 国产精品久久久久影院日本| 欧美日韩免费区域视频在线观看| 国产欧美一区二区| 日韩电影在线观看中文字幕| 日韩精品视频在线播放| 日韩在线观看视频免费| 在线日韩av观看| 亚洲高清一二三区| 亚洲色图五月天| 欧洲精品在线视频| 亚洲精选中文字幕| 国产不卡av在线免费观看| 国产成人中文字幕| 欧美精品成人在线| 性金发美女69hd大尺寸| 欧美亚洲国产视频小说| 亚洲国产成人爱av在线播放| 97精品国产97久久久久久免费| 国产精品劲爆视频| 日韩国产高清视频在线| 欧美日韩免费观看中文| 国内外成人免费激情在线视频| 自拍偷拍亚洲在线| 久久久精品国产一区二区| 欧美一区二区视频97| 亚洲精品国产精品乱码不99按摩| 精品久久久在线观看| 久久久成人av| 久久综合网hezyo| 久久伊人色综合| 91久久精品国产91久久性色| 国产成人在线亚洲欧美| 国产日韩精品在线播放| 欧美亚洲国产日韩2020| 中文字幕亚洲欧美日韩在线不卡| 在线亚洲午夜片av大片| 中文字幕日韩精品在线| 国产美女久久精品| 欧美高清videos高潮hd| 免费91在线视频| 97**国产露脸精品国产| 亚洲精品视频网上网址在线观看| 日韩成人av网址| 亚洲天堂免费观看| 久久久久久一区二区三区| 91爱爱小视频k| 一本大道香蕉久在线播放29| 奇米四色中文综合久久| 国产精品久久久久av| 亚洲尤物视频网| 综合久久五月天| 国产日产久久高清欧美一区| 成人免费激情视频| 欧美大片网站在线观看| 日韩美女福利视频| 国产精品91在线观看| 欧美一级高清免费| 成人自拍性视频| 亚洲精品日韩欧美| 在线观看国产成人av片| 国产91色在线免费| 97欧美精品一区二区三区| 国产日韩av在线播放| 美女精品视频一区| 日韩在线欧美在线国产在线| 国产aⅴ夜夜欢一区二区三区| 亚洲丁香久久久| 亚洲第一区中文99精品| 91精品视频观看| 日韩精品免费电影| 欧美韩日一区二区| 久久影视电视剧免费网站清宫辞电视| 国产精品免费视频久久久| 4438全国亚洲精品在线观看视频| 国色天香2019中文字幕在线观看| 国产精品三级久久久久久电影| 欧美激情一二区| 91网站在线免费观看| 日韩精品在线观看一区二区| 亚洲最大福利视频网| 日韩精品免费在线观看| 欧美在线视频网站| 国产98色在线| 亚洲国产成人在线视频| 亚洲国产小视频| 91天堂在线观看| 欧美老肥婆性猛交视频| 欧美美女操人视频| 揄拍成人国产精品视频| 亚洲全黄一级网站| 欧美在线观看日本一区| 日韩欧美中文免费| 国产主播精品在线| 亚洲女人天堂成人av在线| 久久久久久中文字幕| 超碰精品一区二区三区乱码| 狠狠色香婷婷久久亚洲精品| 国产一区二区av| 久久99久久99精品中文字幕| 日韩精品www| 久久精品久久久久| 日韩成人在线网站| 疯狂蹂躏欧美一区二区精品| 51ⅴ精品国产91久久久久久| 97在线观看视频国产| 在线视频精品一| 欧美日韩美女在线观看| 亚洲精品一二区| 精品国产老师黑色丝袜高跟鞋| 欧美日韩亚洲高清| 久久精品国产久精国产思思| 亚洲精选在线观看| 中文字幕欧美精品在线| 亚洲欧美日韩高清| 国产精品高清网站| 一个色综合导航| 国产成人精品日本亚洲专区61| 亚洲精品国产美女| 18性欧美xxxⅹ性满足| 国产精品扒开腿爽爽爽视频| 中文字幕日韩欧美在线| 亚洲跨种族黑人xxx| 国产日韩av高清| 91在线视频导航| 精品国偷自产在线| 精品久久久免费| 亚洲人成亚洲人成在线观看| 97av视频在线| 日韩av在线免费观看一区| 久久99热这里只有精品国产| 精品日本高清在线播放| 久久久久久久久久久成人| 国产婷婷97碰碰久久人人蜜臀| 国产日韩欧美影视| 日本最新高清不卡中文字幕| 国产欧美精品xxxx另类| 亚洲福利视频久久| 亚洲福利视频二区| 欧美中文字幕精品| 久久天天躁日日躁|