如何获取servername + foldername而不包含脚本名称?
string filePath = Request.QueryString.Get("filepath");
string serverPath = Request.ServerVariables["SERVER_NAME"] + "/";
string fullUrl = "http://" + serverPath + filePath;
Response.Write(fullUrl);
上面的代码缺少文件夹名称。
答案 0 :(得分:0)
你不能那么做,因为HTTP对于文件夹和文件是“盲目的”。
您可能熟悉http://www.acme.com/products/view.asp等网址,但完全有效的网址也可能是http://www.acme.com/products/view,因此您无法区分文件夹和文件名。
你能做什么,只要:
是自己解析路径字符串,并在路径末尾查找 file.ext 模式。
答案 1 :(得分:0)
This page演示了HttpRequest的各个部分是如何分解的。您可以使用Request.FilePath
并删除最后一段,如下所示:
string directory = Request.FilePath.Remove(Request.FilePath.LastIndexOf('/'));