假设您有输入类型文件
<input type="file" onchange="encodeImageFileAsURL(this)" />
在 onchange 函数内部(将此添加到您现有的 onchange 函数中)
function encodeImageFileAsURL(element) {
var file = element.files[0];
var reader = new FileReader();
reader.onloadend = function() {
console.log('RESULT', reader.result)
sendBase64(reader.result);
}
reader.readAsDataURL(file);
}
然后使用此功能,您可以将图像作为 base64 发送到控制器
function sendBase64(base64){
var formdata = new FormData();
formdata.append("base64image", base64);
$.ajax({
url: "@Url.Action("SaveImage")",
type: "POST",
data: formdata,
processData: false,
contentType: false
});
}
控制器方法:
[HttpPost]
public void SaveImage(string base64image)
{
Bitmap bmp = Base64ToBitmap(base64image);
//do something with bitmap
}
public Bitmap Base64ToBitmap(String base64String)
{
byte[] imageAsBytes = Base64.Decode(base64String, Base64Flags.Default);
return BitmapFactory.DecodeByteArray(imageAsBytes, 0, imageAsBytes.Length);
}