简单的图像文件POST到Web Api

本文关键字:Web Api POST 文件 图像 简单 | 更新日期: 2023-09-27 18:15:55

我一直在阅读关于在我的Web Api中构建一个操作方法来允许发布图像,这些图像将保存在服务器上,并通过字段imageURL与Contact对象相关。

我在网上找到了一些如何设置这个的例子,我想测试一下。我现在有:

public Task<HttpResponseMessage> PostFile() 
{ 
    HttpRequestMessage request = this.Request; 
    if (!request.Content.IsMimeMultipartContent()) 
    { 
        throw new HttpResponseException(HttpStatusCode.UnsupportedMediaType); 
    } 
    string root = System.Web.HttpContext.Current.Server.MapPath("~/Content/images"); 
    var provider = new MultipartFormDataStreamProvider(root); 
    var task = request.Content.ReadAsMultipartAsync(provider). 
        ContinueWith<HttpResponseMessage>(o => 
    { 
        string file1 = provider.BodyPartFileNames.First().Value;
        //Use file name to update ImageURL of contact
        return new HttpResponseMessage() 
        { 
            Content = new StringContent("File uploaded.") 
        }; 
    } 
    ); 
    return task; 
}

从如何接受一个文件POST,而我理解的流程,我想测试它正确。

客户端调用此API方法的示例是什么,我可以将contactid作为标头包含在其中?

我需要正确地理解这一点来测试这个代码样本,这样我就可以开始更多地理解这一点,但我对这个领域真的很陌生。我有一种鸡和蛋的场景,我对发布和接收图像知之甚少,需要一个起点。

谢谢。

简单的图像文件POST到Web Api

你可以使用一个小MVC或ASP应用程序(你只需要一个页面),你可以使用一些JS插件来发布文件到你的控制器。插件:jQueryFileUpload或DropzoneJS。最后一个更容易积分。这两个插件都支持发送附加数据。