guru header | guru header Värde (r) |
<%HttpSession gurusession = request.getSession ();out.print ("
Sessionsnamn är | " + gurusession + "
|
");Lokal gurulocale = request.getLocale ();out.print ("
Lokalt namn är | " + gurulocale + " |
");Strängväg = request.getPathInfo ();out.print ("
Path Name is | " + path + " |
");Sträng lpath = request.get ();out.print ("
Kontextvägen är | " + lipath + " |
");Sträng servernamn = request.getServerName ();out.print ("
Servernamn är | " + servernamn + " |
");int portnamn = request.getServerPort ();out.print ("
Serverport är | " + portnamn + " |
");Uppräkning hnames = request.getHeaderNames ();medan (hnames.hasMoreElements ()) {String paramName = (String) hnames.nextElement ();out.print ("
" + paramName + " | ");Sträng paramValue = request.getHeader (paramName);out.println ("" + paramValue + " |
");}%>
Förklaring av koden:
Kodrad 17: Genom att använda förfrågningsobjekt får vi sessionobjektet för just den sessionen och vi får objektvärdet för den sessionen
Kodrad 19: Genom att använda förfrågningsobjekt får vi plats för just den sessionen i.een_US för den JSP.
Kodrad 21: Genom att använda förfrågningsobjekt får vi väginformation för den JSP. I det här fallet är den noll eftersom det inte finns någon sökväg för URL nämnd.
Kodrad 23: Med hjälp av förfrågningsobjekt får vi kontextväg, dvs. rotväg
Kodrad 25: Med hjälp av förfrågningsobjekt får vi servernamnet.
Kodrad 27: Med hjälp av förfrågningsobjekt får vi serverport.
Kodrad 29-35: Med hjälp av förfrågningsobjekt får vi rubriknamn som kommer ut som uppräkning, och därmed får vi alla huvudvärden i rubriknamnen.
I detta får vi alla huvudvärden som en cookie, värd, anslutning, acceptera språk, acceptera kodning.
När du kör koden ovan får du följande utdata:
Utgång :
Vi får en serie värden som sessionsnamn, språknamn, sökväg, servernamn, portnamn, värd, sammanhangsbana och alla rubrikvärden för den JSP.
JSP-serversvar
- När en begäran behandlas och sedan genereras svaret från webbservern. Den består av en statusrad, svarsrubriker, en tom rad och dokument.
- Det är objektet för HTTPServletResponseclass, som är ett svarobjekt.
- Statusraden är en version av HTML.
Svarsrubriker nämns nedan:
Rubrik | Beskrivning |
Tillåta | Den anger förfrågningsmetoderna som GET, POST som servern begär |
Cache-kontroll | Svarsdokumentet kan cachas. Det kan vara offentligt, privat och utan cache. Ingen cache anger att dokumentet inte ska cachas |
Förbindelse | Den instruerar om webbläsaren ska använda sparade HTTP-anslutningar eller inte. Nära värde representerar att webbläsaren inte ska använda persistent i HTTPConnections och "keep-alive" betyder att använda persistenta anslutningar |
Innehåll-disposition | Att fråga användaren om svaret ska sparas på disken eller inte |
Innehållskodning | Sidan måste kodas under sändning |
Innehållslängd | Antal byte i svaret |
Innehållstyp | Den anger MIME-typ av svar |
Går ut | Anger till när innehållet ska anses vara inaktuellt och inte bör cachas |
Senast ändrad | Den anger när dokumentet senast ändrades |
Plats | Den bör ingå i alla svar som har statuskod har 300 som statuskod |
Uppdatera | Den specificerar hur du hittar den uppdaterade sidan. |
Försök igen | Den kan användas med 503-svar för att berätta för klienten om hur snart den kan upprepa begäran |
Set-cookie | Anger kakan som är kopplad till sidan |
Följande är metoderna som använder svarsobjekt:
- String encodeRedirectURL (String URL) - kodar URL: en i redirectURL-metoden.
- String encodeURL (String URL) - kodar webbadressen genom att inkludera sessions-ID.
- Boolean containHeader (Strängnamn) - den innehåller en rubrik i JSP eller inte.
- Boolean isCommited () - svar har begåtts eller inte.
- Void addCookie (Cookie cookie) - lägger till cookie i svaret
- Void addDateHeader (Strängnamn, Strängvärde) - lägger till namn och värde för svarsrubrikens datum
- Void addHeader (Strängnamn, Strängvärde) - lägger till svarsrubrik med namn och värde
- Void addIntHeader (Strängnamn, int-värde) - lägger till svarsrubrik med namn och heltal
- Void flushBuffer () - tvingar innehåll i bufferten till utdata till klienten.
- Void reset () - rensar data i bufferten.
- Void resetBuffer - rensar innehållsbufferten i svaret utan att radera statuskoder.
- Void sendError (intsc, Stringmsg) - skickar ett felsvar till klienten med hjälp av statuskoden.
- Void sendRedirect (strängplats) - skickar ett tillfälligt omdirigeringssvar till klienten.
- Void setBufferSize (int-storlek) - ställer in buffertstorlek för kroppen
- Void setCharacterEncoding (String charset) - ställer in teckenkodning
- Void setContentType (strängtyp) - ställer in svarstypens innehållstyp
- Void setContentLength (intlen) - ställer in svarets innehållslängd
- Void setLocale (Locale lcl) - ställer in svarstypens språktyp
- Void setStatus (intsc) - ställer in statuskoden för svaret
Exempel:
I det här exemplet täcker vi olika metoder getLocale, flushbuffer, getWriter, get ContentType, setIntHeader.
<% @ sida språk = "java" contentType = "text / html; charset = ISO-8859-1" pageEncoding = "ISO-8859-1"%><% @ page import = "java.io. * java.util. *"%> Guru Action Response
Guru-svar
<%Lokal lcl = respons.getLocale ();out.println ("Lokal är: + lcl + "\ n");response.flushBuffer ();PrintWriter-utgång = respons.getWriter ();output.println ("Detta är från författarobjekt");Strängtyp = respons.getContentType ();out.println ("Innehållstypen: + typ + "\ n");// Ställ in uppdatering, autoladdningstid som 5 sekunderresponse.setIntHeader ("Uppdatera", 5);// Få aktuell tidDatum dt = nytt datum ();out.println ("Dagens datum är: + dt.toString () + "\ n");%>
Förklaring av koden:
Kodrad 13: Med hjälp av svarobjekt får vi språkobjekt för denna JSP-session
Kodrad 15: Med hjälp av svarobjekt används flushbuffer för att tvinga buffertinnehållet till klienten
Kodrad 16: Med hjälp av svarobjekt får vi författarobjekt som får utdata i utflödet
Kod Line18: Med hjälp av svarsobjekt får vi innehållstyp, dvs MIME-typ av svarsobjekt
Kodrad 21: Med hjälp av svarobjekt används den för att automatiskt ladda var 5: e sekund, eftersom 5 är inställd som den andra parametern
När du kör koden ovan får du följande utdata:
Produktion:
- Här får vi utdata eftersom detta kommer från författarobjekt från getWriter, vilket ger oss objekt och vi kan mata ut i utflödet.
- Vi får platsen som en_us och innehållstyp som text / html
- Vi får teckenuppsättning som ISO 8859
- Dagens datum som aktuellt datum.
JSP HTTP-statuskoder
- När begäran behandlas genereras svaret. Svarstatusraden består av HTTP-version, en statuskod och ett associerat meddelande.
- Meddelandet är direkt associerat med statuskoden och HTTP-versionen och det bestäms av servern.
- Som standard är 200 inställt som en statuskod i JSP, så vi behöver inte ställa in det uttryckligen.
- Vi kan ställa in som response.setStatus () -metoden
Koderna faller i följande 5 kategorier:
- 100-199 - Här indikerar klienten att den ska svara med någon åtgärd
- 200-299 - Det betyder att begäran lyckas
- 300-399 - De används för filer som har flyttats och innehåller vanligtvis en platsrubrik som anger ny adress
- 400-499 - Indikerar fel från klienten
- 500-599 - Indikerar fel från servern
Några av de vanliga statuskoderna är nedan:
- 200 - Indikerar att allt är bra
- 301 - Den har flyttat permanent
- 304 - Ändrades inte sedan senaste ändring
- 400 Dålig Förfrågan
- 404 Ej Hittad
- 405 - Metoden hittades inte
- 500 - Internt serverfel
- 503 Tjänst Otillgänglig
- 505 - HTTP-version stöds inte
Några av dess metoder listas nedan:
- Public void setStatus (intstatusCode)
Den ställer in statuskoden beroende på vad vi vill ställa in på den JSP-sidan. Detta ger oss meddelandet om statuskoden som har ställts in
- Public void sendRedirect (String URL)
Det genererar 302 svar tillsammans med platshuvudet som ger URL till det nya dokumentet
- Public void sendError (intcode, Stringmsg)
Den skickar statuskoden tillsammans med kortmeddelandet och den formateras i HTML-dokumentet.
Exempel:
I det här exemplet skickar vi fel till JSP-sidan uttryckligen.
<% @ sida språk = "java" contentType = "text / html; charset = ISO-8859-1" pageEncoding = "ISO-8859-1"%> Guru Status Code <% response.sendError (404, "Guru-sidan hittades inte"); %>