.net webapi filepath作为参数

som*_*ame 1 c# asp.net-web-api

我想知道是否有可能以某种方式将一个亲戚filepath作为字符串发送到GET方法.

我的方法:

public HttpResponseMessage Get([FromUri] string fileName)

My route:
    config.Routes.MapHttpRoute(
    name: "MiscApiDownload",
    routeTemplate: "api/{controller}/download/{fileName}",
    defaults: new {action = "Download" }
);
Run Code Online (Sandbox Code Playgroud)

文件名就像"test.jpg"工作,但只要我有一个subdirexp."folder/test.jpg"该方法不再被发现.这是合乎逻辑的.问题是如果有一个很好的方法在URI中执行此操作.我不想在体内接受它.

dan*_*wig 5

使用catchall参数

"api/{controller}/download/{*fileName}"
Run Code Online (Sandbox Code Playgroud)

  • 您是否尝试在网址末尾添加 / ? (2认同)