我正在尝试为具有以下结构的 API 控制器创建自定义路由:
/{currentUrl}/{methodName}
currentUrl
不作为参数出现。
例子:
/tool/compute/download
其中“download”是方法的名称,“/tool/compute/”是我们所在的当前页面。
顺便提一下,我正在使用 Sitecore。
有人可以帮忙吗?
谢谢。
我正在尝试为具有以下结构的 API 控制器创建自定义路由:
/{currentUrl}/{methodName}
currentUrl
不作为参数出现。
例子:
/tool/compute/download
其中“download”是方法的名称,“/tool/compute/”是我们所在的当前页面。
顺便提一下,我正在使用 Sitecore。
有人可以帮忙吗?
谢谢。
您可以构建一个将工具名称作为参数的方法,如下所示:
[Route("tool/{toolName}/download")]
public HttpResponseMessage Get(string toolName)
{
var path = GetPathByToolName(toolName);
HttpResponseMessage result = new HttpResponseMessage(HttpStatusCode.OK);
var stream = new FileStream(path, FileMode.Open);
result.Content = new StreamContent(stream);
result.Content.Headers.ContentType =
new MediaTypeHeaderValue("application/octet-stream");
return result;
}