代码之家  ›  专栏  ›  技术社区  ›  Malin

从database.getfilepath美化我的URL

  •  0
  • Malin  · 技术社区  · 7 年前

    在我的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

    2 回复  |  直到 7 年前
        1
  •  1
  •   Tom Van Aken    7 年前

    由于要重定向到同一个数据库,因此可以按如下方式计算url前缀(主机+数据库路径):

    context.getUrl().toString().split(view.getPageName())[0]
    
        2
  •  1
  •   Michael Ruhnau    7 年前

    database.getFilePath().replace("\\", "/");