首页 > 解决方案 > rest api - 发送和接收图像

问题描述

我在我的 api 方法中创建了

 public async Task<IActionResult> Upload(int id, [FromForm]IFormFile file)

将用户图像作为 byteArray 保存到数据库

  user.UserDetails.AvatarImage = stream.ToArray();

我有以下问题:

1)当客户端向用户 dto 询问 API 时,我应该将 byte[] 作为头像返回并且客户端应该以某种方式显示它吗?

2)我应该如何从我的客户发送请求,比方说来自 wpf 客户端。我应该如何在我的 Http Put 操作中准备数据<--我不知道我应该在内容中输入什么(我将其作为 json 发送,但我不知道如何将图片作为 IFromFile 发送)我已经尝试使用 restlet 我的 api来自 google chrome 的客户端扩展,我想从类似于此的代码发送 put 请求: 在此处输入图像描述

我的意思是,在 WPF 应用程序中,我从用户那里获取图像,假设我有一些 Stream,我如何将其作为 IFromFile 发送(我不想引用 aspnetcoremvc ......)

标签: c#resthttpclient

解决方案


我认为更好的方法是不做任何这些。当任何人上传图像时,将其存储在通过 URL 公开可用的位置。然后允许客户端仅引用图像的 URL。图像的提供将由您的网络服务器自动处理,图像的显示和检索将由您的客户端/浏览器自动处理。您不必担心任何事情。


推荐阅读