hvordan man får en url i en servlet

Indlæg af Dan Dejligbjerg     opdateret: 2012-01-03

I Java- programmeringssprog , er en servlet en klasse , der bruges til at udvide en server evne , der er adgang til ved en vært ansøgning . Dette er normalt udføres af en anmodning-respons programmering model . HTTP-specifikke servlets give doGet og doPost metoder til håndtering af disse tjenester . Kom eller fremfundet den anmodende webadresse i en servlet sker via brugen af visse Java anmodninger . Følgende webadresse er antaget i nedenstående trin : http://hostname. com/mywebapp/servlet/MyServlet/a/b c=123 d=789 ? .
1
Brug ServletRequest. getRequestURL () :


public static String getUrl ( HttpServletRequest req ) {
String reqUrl=req. getRequestURL ( ) toString ( ) ; .
String QueryString=req. getQueryString ( ) //d=789
if ( QueryString=NUL! ) {
reqUrl +=+ QueryString " ? "
}

tilbage reqUrl ;
}

Denne metode returnerer alt , men søgestrengen . .
2
Brug ServletRequest. getRequestURI () , hvis du ikke har brug for værtsnavnet :

public static String getUrl ( . HttpServletRequest req ) {
String reqUri=req. getRequestURI ( ) toString ( ) ;
String QueryString=req. getQueryString () ; //d=789

if ( QueryString=NUL! ) {
reqUri +=+ QueryString " ? "
}
tilbage reqUri ;
}
3
at konstruere webadressen fra jorden op , skal du bruge følgende : .


public static String getUrl ( HttpServletRequest req ) {
String ordning=req . getScheme () ; //http
String ServerName=req. getServerName () ; //hostname. com
int serverPort=req. getServerPort ( ) //80

String contextPath=req. getContextPath () ; ///mywebapp
String servletPath=req. getServletPath () ; ///servlet /MyServlet

String pathInfo=req. getPathInfo () ; ///a /b , c=123
String QueryString=req. getQueryString () ; //d=789

//Genopbygning oprindeligt anmodende URL
String url=ordning +"://"+ ServerName +":"+ serverPort + contextPath + servletPath ; if ( pathInfo=NUL! ) {
url +=pathInfo ;
}
if ( QueryString=NUL! ) {
url +=+ QueryString " ? " ;
}
tilbage url ;
}


Previous:hvordan man kan læse en csv fil i python Next:hvordan man åbner en postsættet



 

Kommentarer

Code:
change