मैं एक फ़िल्टर लिखने का प्रयास कर रहा हूं जो अनुरोध URL को पुनः प्राप्त कर सकता है, लेकिन मुझे यकीन नहीं है कि ऐसा कैसे करें।
यह है, जो कि अभी तक मेरे पास है:
import javax.servlet.*;
import javax.servlet.http.HttpServletRequest;
import java.io.IOException;
public class MyFilter implements Filter {
public void init(FilterConfig config) throws ServletException { }
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws ServletException, IOException {
chain.doFilter(request, response);
String url = ((HttpServletRequest) request).getPathTranslated();
System.out.println("Url: " + url);
}
public void destroy() { }
}
जब मैं अपने सर्वर पर एक पेज हिट करता हूं, तो मुझे जो एकमात्र आउटपुट दिखाई देता है, वह "Url: null" है।
फ़िल्टर में किसी दिए गए ServletRequest ऑब्जेक्ट से अनुरोधित URL प्राप्त करने का सही तरीका क्या है?
getRequestURL()
रिटर्नStringBuffer
, नहींString
।