将View64的base64映像发送到ASP.NET控制器

问题描述 投票:1回答:1

我正在尝试将一个base64图像从View发送到Controller。

我将base64存储在输入中,我得到它(工作正常):

var photoBase64Captured = $('#txtPhotoBase64Captured').val();

然后在我的View,我打电话给Controller并等待回应:

$.get("@Url.Action("CheckFace", "User")", { base64: photoBase64Captured }, function (data) {

   var result = $.parseJSON(data);

   if (data != null) {

   }
});

当我尝试呼叫控制器时,我在Chrome的控制台中收到以下错误:

Failed to load resource: net::ERR_SPDY_PROTOCOL_ERROR

这是Controller

public async Task<ActionResult> CheckFace(string base64)
{

}

任何想法为什么会这样? base64太长了,无法发送到Controller

如果我将其他值发送到Controller它可以正常工作,所以这不是方法的问题。

c# jquery asp.net-mvc asp.net-core
1个回答
2
投票

在这种情况下,您需要使用post。图像base64到大的Get请求。

$.post("@Url.Action("CheckFace", "User")", { base64: photoBase64Captured }, function (data) {

   var result = $.parseJSON(data);

   if (data != null) {

   }
});

[HttpPost]
public async Task<ActionResult> CheckFace(string base64)
{

}
© www.soinside.com 2019 - 2024. All rights reserved.