Xpages 从database.getfilepath美化我的URL
在我的xpages应用程序中,我想根据角色重定向用户。但是,计算出的URL会导致路径名中有%5C的丑陋URLXpages 从database.getfilepath美化我的URL,xpages,ssjs,Xpages,Ssjs,在我的xpages应用程序中,我想根据角色重定向用户。但是,计算出的URL会导致路径名中有%5C的丑陋URL var baseURL = context.getUrl().toString().split(facesContext.getExternalContext().getRequest().getRequestURI())[0]; var path =escape(database.getFilePath()); if (context.getUser().getRoles().co
var baseURL = context.getUrl().toString().split(facesContext.getExternalContext().getRequest().getRequestURI())[0];
var path =escape(database.getFilePath());
if (context.getUser().getRoles().contains("[Administrator]") || context.getUser().getRoles().contains("[SuperAdmin]") || context.getUser().getRoles().contains("[Ledamot]")){
facesContext.getExternalContext().redirect(baseURL + slash + path + "/employees.xsp?sorting=asc")
}else{
context.redirectToPage("index.xsp")
}
这会产生如下结果::%5c是反斜杠,因此您需要做的是将文件路径中的反斜杠替换为正斜杠。因此,类似这样的方法应该有效:
database.getFilePath().replace("\\", "/");
%5c是反斜杠,所以您要做的是用正斜杠替换文件路径中的反斜杠。因此,类似这样的方法应该有效:
database.getFilePath().replace("\\", "/");
由于要重定向到同一个数据库,因此可以按如下方式计算url前缀(主机+数据库路径):
context.getUrl().toString().split(view.getPageName())[0]
由于要重定向到同一个数据库,因此可以按如下方式计算url前缀(主机+数据库路径):
context.getUrl().toString().split(view.getPageName())[0]
这是因为您正在转义文件路径,但为什么?这是因为您正在转义文件路径,但为什么?