我有行动:
public ActionResult Thumbnail(string image)
{
return GetThumbnail(image);
}
我正在尝试通过下一个请求访问它:
http://localhost:60955/thumbnail/imagename.png
在配置中,我有:
<add name="Png" path="/thumbnail/*.png" verb="GET" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
并且在路由配置中:
routes.MapRoute(
name: "Thumbnail",
url: "thumbnail/{*image}",
defaults: new { controller = "Image", action = "Thumbnail" }
);
因此它适用于以上图像URL。但是我需要使用它来处理任何子文件夹,并且以下返回404:
http://localhost:60955/thumbnail/screenshots/imagename.png
并且当我添加斜杠时,它又可以正常工作:
http://localhost:60955/thumbnail/screenshots/imagename.png/
我可以使其不带有斜线吗?我觉得我需要在配置中自定义处理程序路径,但无法弄清楚该怎么做。
在这种情况下,您应该使用查询字符串
URL更改为此
http://localhost:60955/thumbnail?image=screenshots/imagename.png