我有一个文件和文件夹的树视图,每个树节点都配置为将节点文本和值发送到控制器,以重定向并显示文件列表(如果是文件夹)或显示内容(如果是文件)。值通常是点击的文件夹或文件的URL。
在web.config中设置双重转义
问题:如果文件的编码网址具有多个%252f字符,则无法将其识别为查询字符串参数。enter code here
Worked Url:http:// [host] /Admin/Files/CSS/Content%252ftest.css
网址失败:http:// [host] /Admin/Files/CSS/Content%252fStyles%252ftest.css
[ValidateInput(false)]
public ActionResult EditBrowsableFile(string groupName, string fileName)
{
if (groupName != null && fileName != null)
{
var content = FileService.GetFileContent(Server.MapPath("~/" + System.Web.HttpUtility.UrlDecode(fileName)));
ViewData["SelectedFile"] = new FileBrowser() { FilePath = fileName, GroupName = groupName, FileContent = content }; ;
}
return View("BrowsableFiles");
}
<security>
<requestFiltering allowDoubleEscaping="true"/>
</security>