JavaWeb 获取请求网络协议、IP、端口号、项目根路径
1.需求
在项目中,需要使用Java向本程序发送request请求,由于项目的发布名称、部署IP和端口不固定,
如何才能动态获取这些信息呢?
2.代码实现
import javax.servlet.http.HttpServletRequest;
/**
* 获取url请求前缀
* @explain http://localhost:8080/test
* @param request request对象
* @return
*/
public static String getRequestPrefix (HttpServletRequest request) {
// 网络协议
String networkProtocol = request.getScheme();
// 网络ip
String ip = request.getServerName();
// 端口号
int port = request.getServerPort();
// 项目发布名称
String webApp = request.getContextPath();
return networkProtocol + "://" + ip + ":" + port + webApp;
}
2021年11月4日10:43:15
SpringMvc,SpringBoot控制层获取请求地址
第一步:注入对象HttpServletRequest
注意:在代码的编译期和运行期,上述的request对象都是NULL,因为此时此刻,并没有请求到达这个控制器,所以该注入的对象为空。
第二步:在请求入口里调用请求对象。
相关推荐:
- JavaWeb 获取ip地址
- js 获取请求网络协议、IP、端口号、项目名称