使用邮递员接受 zip 文件

Accept zip file using postman

我已经在 .Net Core 应用程序中创建了 api 项目。我还创建了接受 HttpRequestMessage 作为参数的方法。现在我正在尝试使用 Postman 调用我的 api 方法并将文件作为正文参数包含在内,但是我的 api 方法没有调用。

这是代码

[Route("api/[controller]")]
public class ValuesController : Controller
{
    [HttpPost]
    public HttpResponseMessage PostFiles()
    {
        HttpResponseMessage result = null;
        var httpRequest = HttpContext.Request;

        return result;
    }}

这里是Postman请求数据

POST /api/values/PostFiles HTTP/1.1

主持人:localhost:64226 内容类型:multipart/form-data;边界=----WebKitFormBoundary7MA4YWxkTrZu0gW 缓存控制:无缓存 邮递员令牌:6adcc652-a4ab-3714-cc5e-770bd214ac7a

------WebKitFormBoundary7MA4YWxkTrZu0gW Content-Disposition:表单数据;名字="data";文件名="" 内容类型:

------WebKitFormBoundary7MA4YWxkTrZu0gW--

这是我使用邮递员 api 呼叫的屏幕截图。

以文件为参数的请求正文

有什么我遗漏的吗?

你能帮我调用我的网站 api 并使用 Postman 接受文件作为参数吗?

我认为你的路线有问题。试试这个:

public class ValuesController : Controller
{
    [Route("api/values/postfiles")]
    [HttpPost]
    public HttpResponseMessage PostFiles()
    {
        HttpResponseMessage result = null;
        var files = Request.Form.Files;
        return result;
    }
}

然后尝试在 http://localhost:yourport/api/values/postfiles 访问 API。

将"yourport"替换成你的端口号

如果文件可用,您将在 "fileStream" 中获得该文件。

在 ASP.NET 核心应用程序中使用 IHostingEnvironment。然后你可以调用 ContentRootPath 和 WebRootPath