我的控制器在此代码的请求对象中获取上传的图像:
[HttpPost]
public string Upload()
{
string fileName = Request.Form["FileName"];
string description = Request.Form["Description"];
string image = Request.Form["Image"];
return fileName;
}
image 的值(至少是它的开头)看起来很像这样:
data:image/jpeg;base64,/9j/4AAQSkZJRgABAgEAYABgAAD/7gAOQWRvYmUAZAAAAAAB/...
我尝试使用以下方法进行转换:
byte[] bImage = Convert.FromBase64String(image);
但是,这给出了 System.FormatException:“输入不是有效的 Base-64 字符串,因为它包含非 base 64 字符、两个以上的填充字符或填充字符中的非法字符。”
我觉得问题在于至少字符串的开头不是base64,但据我所知,它都不是。我需要在解码之前解析字符串吗?我错过了一些完全不同的东西吗?