如何在 c# 中测试我的下载文件 Web API
本文关键字:下载 文件 Web API 我的 测试 | 更新日期: 2023-09-27 18:34:36
我想从网络服务下载文件。 我已经尝试这样做,但我无法在高级 REST 客户端中测试它。 这是我的代码
public static HttpResponseMessage FileAsAttachment(string path, string filename)
{
if (File.Exists(path))
{
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");
result.Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("attachment");
result.Content.Headers.ContentDisposition.FileName = filename;
return result;
}
return new HttpResponseMessage(HttpStatusCode.NotFound);
}
我总是有回应" "$id": "1"消息":"找不到与请求 URI 'http://localhost:36690/api/Data/FileAsAttachment?path=F:''&文件名=claims.jpg'匹配的 HTTP 资源。"消息详细信息":"在控制器'数据'上未找到与名称'文件作为附件'匹配的操作。我的控制器名称是数据
Action method
不应该是静态的。当我从您的代码中删除static
时,它正在工作。
为什么需要将其声明为静态方法?
请查看以下链接。
链接1链接2
更新:评论后,尝试使用[HttpGet]
装饰方法
[HttpGet]
public HttpResponseMessage FileAsAttachment(string path, string filename)