我希望用户能够通过我的应用程序上传文件。我没有数据库访问权限,我所有的数据调用都是通过另一个人正在编写的网络服务完成的。我需要保护 Web 服务,所以我已经使用它并通过 WebAPI 公开它,并添加了 OAuth 安全性。
现在到我的问题。
我写了以下内容。
public Task<FileResult> Post()
{
if (Request.Content.IsMimeMultipartContent())
{
var task = Request.Content.ReadAsByteArrayAsync().ContinueWith(
o =>
{
var result = this.Client.UploadPicture(this.UserId, o.Result);
if (result.ResultCode == 0)
{
return new FileResult()
{
Message = "Success",
FileId = result.ServerId
};
}
throw new HttpResponseException(...);
});
return task;
}
...
}
在 WebAPI 和多线程方面,我几乎是个菜鸟(我不确定为什么需要异步处理?我敢肯定这是有原因的,但现在我只想要一个工作示例并得到到后来为什么..)。
我的代码大致基于我在网上找到的一些研发和示例,但我还没有遇到像我需要完成的场景......但似乎我没有做某事普通的...
将文件上传到服务器,并将图像 byte[] 对象传递给 sql 或其他服务?
在这一行
var result = this.Client.UploadPicture(this.UserId, o.Result);
我正在上传一个 byte[] 数组的东西....
然后稍后(检索方法有效,我设法检索并查看测试图像)
当检索我上传的“图像”的字节数组时,我得到了一个 idk 数组。例如,我得到了一个有效的结果,但它不是没有图片。这让我相信上传的数据是假的:|
O_o 如何获取图像字节[]?