从 database.getfilepath 美化我的 URL
beautify my URL from database.getfilepath
在我的 xpages 应用程序中,我想根据角色重定向用户。然而,计算出的 URL 导致路径名
中带有 %5C 的丑陋 URL
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")
}
这会产生如下结果::https://server/directory%5cdatabase.nsf/employees.xsp?sorting=asc
%5c 是一个反斜杠,所以你要做的就是用正斜杠替换文件路径中的反斜杠。所以这样的事情应该有效:
database.getFilePath().replace("\", "/");
由于您要重定向到同一个数据库,因此可以这样计算 url 前缀(主机 + 数据库路径):
context.getUrl().toString().split(view.getPageName())[0]
在我的 xpages 应用程序中,我想根据角色重定向用户。然而,计算出的 URL 导致路径名
中带有 %5C 的丑陋 URLvar 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")
}
这会产生如下结果::https://server/directory%5cdatabase.nsf/employees.xsp?sorting=asc
%5c 是一个反斜杠,所以你要做的就是用正斜杠替换文件路径中的反斜杠。所以这样的事情应该有效:
database.getFilePath().replace("\", "/");
由于您要重定向到同一个数据库,因此可以这样计算 url 前缀(主机 + 数据库路径):
context.getUrl().toString().split(view.getPageName())[0]