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

首頁 > 編程 > JSP > 正文

六、訪問CGI變量

2020-07-27 21:56:05
字體:
來源:轉載
供稿:網友
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
国产精品久久久久久久久久久新郎| 欧美视频裸体精品| 国产精品日韩欧美大师| 精品视频久久久| 亚洲美女动态图120秒| 成人免费xxxxx在线观看| 日韩欧美亚洲国产一区| 一区二区三区久久精品| 尤物精品国产第一福利三区| 成人国产精品一区二区| 亚洲综合精品一区二区| 久久av资源网站| 久久97久久97精品免视看| 91成人福利在线| 欧美一二三视频| 日韩国产中文字幕| 亚洲人成电影网站色| 国产欧美欧洲在线观看| 日韩一区二区三区xxxx| 成人黄色免费看| 国产精品手机播放| 亚洲午夜av久久乱码| 黑人巨大精品欧美一区二区三区| 91香蕉国产在线观看| 成人福利在线观看| 国产精品对白刺激| 亚洲香蕉av在线一区二区三区| 韩国视频理论视频久久| 亚洲成人性视频| 668精品在线视频| 亚洲欧美日韩区| 成人av色在线观看| 亚洲va欧美va国产综合久久| 精品久久久久久久久久| 亚洲天堂男人天堂女人天堂| 精品一区二区电影| 欧美日韩国产精品一区二区不卡中文| 97精品一区二区视频在线观看| 国产精品视频一区国模私拍| 精品色蜜蜜精品视频在线观看| 亚洲视频综合网| 88xx成人精品| 亚洲人成在线观| 日韩av综合网| 久久久91精品国产一区不卡| 欧美体内谢she精2性欧美| 欧美韩日一区二区| 欧美在线激情网| 91精品久久久久久久| 国产一区红桃视频| 国产精品入口免费视| 久久久久久噜噜噜久久久精品| 欧美国产日韩一区二区三区| 欧美性猛交xxxxx免费看| 538国产精品一区二区在线| 自拍偷拍亚洲在线| 亚洲最大av网站| 姬川优奈aav一区二区| 国产一区二区丝袜高跟鞋图片| 欧美激情精品久久久久久| 欧美成人午夜影院| 中文字幕日韩有码| 中文字幕欧美在线| 国产精品久久97| 亚洲欧美精品一区二区| 亚洲国产欧美一区二区三区同亚洲| 久久乐国产精品| 在线观看欧美日韩国产| 国产精品成人免费视频| 日韩中文字幕在线视频| 欧美日韩免费一区| 日本a级片电影一区二区| 98午夜经典影视| 国语自产精品视频在线看一大j8| 久久九九热免费视频| 日韩男女性生活视频| 中文字幕精品在线视频| 国产精品久久久久久久久免费| 精品中文字幕久久久久久| 国产精品亚洲视频在线观看| 蜜臀久久99精品久久久久久宅男| 自拍偷拍亚洲在线| 97超视频免费观看| 日韩精品免费在线观看| 亚洲精品久久久久久久久久久久久| 日韩人体视频一二区| 精品成人av一区| 4p变态网欧美系列| 国产丝袜精品第一页| 亚洲精品福利资源站| 国产精品久久一区主播| 国产精品一区二区三区在线播放| 亚洲成人动漫在线播放| 清纯唯美亚洲综合| 国产精品福利在线| 992tv在线成人免费观看| 精品久久久久久中文字幕大豆网| 91综合免费在线| 九九热这里只有在线精品视| 色偷偷偷亚洲综合网另类| 亚洲美女动态图120秒| 国产99久久精品一区二区 夜夜躁日日躁| 成人xxxxx| 91网在线免费观看| 欧美日韩在线第一页| 欧美国产日韩一区二区| 欧美日韩精品在线观看| 国产精品久久久久高潮| 成人做爽爽免费视频| 国产精品久久久久av| 成人免费视频97| 国产欧美一区二区三区四区| 一区二区三区高清国产| 日韩欧美成人免费视频| 色在人av网站天堂精品| 91国产精品电影| 欧美另类极品videosbestfree| 欧美做受高潮电影o| 日韩精品高清在线| 夜夜嗨av色综合久久久综合网| 欧美夜福利tv在线| 日韩av黄色在线观看| 亚洲精品福利资源站| 日韩精品小视频| 国产视频久久网| 欧美激情综合色| 日本一区二三区好的精华液| 国产噜噜噜噜噜久久久久久久久| 国产精品视频导航| 在线成人中文字幕| 高清欧美一区二区三区| 中国人与牲禽动交精品| 亚洲日韩欧美视频一区| 岛国精品视频在线播放| 日韩中文字幕在线免费观看| 欧美视频在线免费看| 97精品伊人久久久大香线蕉| 日韩欧美国产骚| 欧美一级电影在线| 国产成人精品国内自产拍免费看| 国产精品日韩一区| 日韩中文字幕在线免费观看| 亚洲男人天堂九九视频| 综合国产在线视频| 亚洲午夜精品久久久久久性色| 国产做受高潮69| 国产精品久久久亚洲| 亚洲欧美国产va在线影院| 国产精品久久久久国产a级| 亚洲一区二区三区香蕉| 欧美日韩在线观看视频| 国产成人在线精品| 91免费精品国偷自产在线| 欧美理论电影在线播放| 日韩美女av在线免费观看| 亚洲乱码一区av黑人高潮| 日韩av网站在线| 中文字幕亚洲欧美| 久久久久久国产免费| 色婷婷**av毛片一区| 国产经典一区二区| 国产精品专区h在线观看| 91精品国产91久久久久久久久| 国产美女久久精品香蕉69|