gpt4 book ai didi

java - 如何从 jsp 请求对象中获取基本 url?

转载 作者:IT老高 更新时间:2023-10-28 21:07:16 25 4
gpt4 key购买 nike

如何从jsp请求对象中获取base url? http://localhost:8080/SOMETHING/index.jsp ,但是我想要直到index.jsp的部分,jsp怎么可能?

最佳答案

那么,您想要 基本 URL 吗?您可以按如下方式在 servlet 中获取它:

String url = request.getRequestURL().toString();
String baseURL = url.substring(0, url.length() - request.getRequestURI().length()) + request.getContextPath() + "/";
// ...

或者在 JSP 中,如 <base> ,几乎没有 JSTL 的帮助:

<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<c:set var="req" value="${pageContext.request}" />
<c:set var="url">${req.requestURL}</c:set>
<c:set var="uri" value="${req.requestURI}" />
...
<head>
<base href="${fn:substring(url, 0, fn:length(url) - fn:length(uri))}${req.contextPath}/" />
</head>

请注意,当它已经是默认端口号时,这不包括端口号,例如 80。java.net.URL没有考虑到这一点。

另见:

关于java - 如何从 jsp 请求对象中获取基本 url?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6271075/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com