Usa ServletRequest.getRequestURL ( ) :
public static String getURL ( HttpServletRequest req ) {
String reqUrl = req.getRequestURL ( ) toString (. ) ;
String queryString = req.getQueryString (); ! " ? " //d = 789
se ( queryString = null) {
reqUrl + = + queryString ;
}
ritorno reqUrl ;
}
Questo metodo restituisce tutto, ma la stringa di query
2
Usa . ServletRequest.getRequestURI ( ), se non è necessario il nome host : .
public static String getUrl ( HttpServletRequest req ) {
String reqUri = req.getRequestURI ( ) toString ( ) ; < br
String > queryString = req.getQueryString ( ) ; //d = 789
se ( queryString = null ) {
reqUri + = + queryString " ? " ;
}
ritorno reqUri ;
}
3
Per costruire l'URL da zero , utilizzare il seguente :
public static String getUrl ( HttpServletRequest req ) {
schema String
= req.getScheme ( ) ; //http
String nomeServer = req.getServerName ( ) ; //hostname.com < br
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
//Ricostruire originale richiedendo URL
String url = schema + " ://" + serverName + " : " + + serverPort contextPath + servletPath ; if ( ! pathInfo = null ) { < br
url > + = pathInfo ;
}
se ( queryString = null ) {
url = + + queryString " ? " ;
}
ritorno url ;
}
Programmazione © www.354353.com