SpringBoot-JAVA:将客户机参数添加到URL
我想在我的URL中添加一个客户端名称参数,因此当我收到如下链接时: 我想测试我的客户机是否存在于数据库中,如果存在,我希望客户机接收我网站的内容,就像他调用: 我尝试使用如下所示的包装器:SpringBoot-JAVA:将客户机参数添加到URL,java,angularjs,spring-boot,Java,Angularjs,Spring Boot,我想在我的URL中添加一个客户端名称参数,因此当我收到如下链接时: 我想测试我的客户机是否存在于数据库中,如果存在,我希望客户机接收我网站的内容,就像他调用: 我尝试使用如下所示的包装器: import org.apache.commons.lang.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import javax.servlet.*; import javax.servlet.http.Htt
import org.apache.commons.lang.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import javax.servlet.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletRequestWrapper;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
public class ChangeURIPathFilter implements Filter {
private final Logger log = LoggerFactory.getLogger(ChangeURIPathFilter.class);
RequestWrapper modifiedRequest = null;
@Override
public void init(FilterConfig filterConfig) throws ServletException {}
@Override
public void destroy() {}
@Override
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
HttpServletRequest httpRequest = (HttpServletRequest) request;
String contextPath = ((HttpServletRequest) request).getContextPath();
String requestURI = httpRequest.getRequestURI();
modifiedRequest = new RequestWrapper(httpRequest, "/");
chain.doFilter(modifiedRequest, response);
}
class RequestWrapper extends HttpServletRequestWrapper {
private String originalValue;
public RequestWrapper(HttpServletRequest request) {
super(request);
}
@Override
public String getRequestURI() {
String originalURI = super.getRequestURI();
String s = super.getRequestURI();
if (StringUtils.equals(s, originalValue)) return originalValue
.replaceAll("client1", "");
else return s;
}
public RequestWrapper(HttpServletRequest request, String newValue) {
super(request);
this.originalValue = request.getRequestURI();
}
}
}
但是我所有的测试都失败了。有谁能帮我解决这个问题吗
谢谢我听不懂你的问题。请解释更多见下面的答案我有一个saas应用程序,它服务于多个客户端。我想给每个客户端一个链接来访问我的应用程序,比如:localhost:8080/client1。如果客户端不存在,我会将其转发到错误页面。我看到这种行为是出于感谢,我在等待你的回应。