java获取请求路径信息

记录一下常用路径信息的获取:

//测试的请求url, get方法  
//"http://localhost:8080/struts2/user/login.action?userid=1000"  
   
//获取请求方法  
request.getMethod();        //返回"GET"  
   
//获取请求协议  
request.getScheme();        //返回"http"  
   
//获取请求域名(IP地址);  
request.getServerName();    //返回"localhost"  
   
//获取请求端口号  
request.getServerPort();    //返回"8080"  
   
//获取请求URL, 不包括请求参数  
request.getRequestURL();    //返回"http://localhost:8080/struts2/user/login.action"  
   
//获取请求URI, 也不包括请求参数, 相当于contextPath + servletPath  
request.getRequestURI();    //返回"/struts2/user/login.action"  
   
//获取请求参数, 不带问号"?"  
request.getQueryString();   //返回"userid=1000"   
   
//获取请求协议  
request.getProtocol();      //返回"HTTP/1.1"  
   
//获取Web应用程序路径  
request.getContextPath();   //返回"/struts2"  
   
//获取请求资源路径  
request.getServletPath();   //返回"/user/login.action" 
Java中,前端请求路径是通过URL传递给后端的。一般来说,URL只能包含ASCII字符,对于包含中文的路径,需要进行URL编码。 URL编码是将URL中的特殊字符转换成URL编码格式,以确保它们能够正常传递和识别。在Java中,可以使用`URLEncoder`类来进行URL编码。 示例代码如下: ```java String chinesePath = "前端请求路径有中文"; String encodedPath = URLEncoder.encode(chinesePath, "UTF-8"); String url = "http://example.com/api/" + encodedPath; // 构建HTTP请求,发送到后端 ``` 在这个示例中,我们使用`URLEncoder.encode`方法将`chinesePath`进行URL编码,并指定编码格式为UTF-8。然后将编码后的路径拼接到URL中,发送给后端处理。 在后端接收到请求时,需要将URL中的编码部分进行解码,以还原成原始的中文路径。可以使用`URLDecoder`类进行URL解码。 示例代码如下: ```java String encodedPath = // 从请求获取编码后的路径 String decodedPath = URLDecoder.decode(encodedPath, "UTF-8"); // 对解码后的路径进行处理 ``` 在这个示例中,我们使用`URLDecoder.decode`方法将`encodedPath`进行URL解码,并指定解码格式为UTF-8。然后对解码后的路径进行进一步处理。 需要注意的是,URL中的中文路径可能在不同的环境中存在一定的兼容性问题,因此在实际的开发中,建议尽量避免在URL中包含中文,或者使用其他方式进行传递和处理。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值