WEBAPI Ajax POST调用花费的时间太长

时间:2018-08-08 17:52:09

标签: .net arrays ajax entity-framework asp.net-web-api

我有两种单独的解决方案,一种包含前端,另一种用于容纳WebApi并处理所有后端。

我正在尝试使用jQuery通过Ajax发布将文件作为Byte []发送到后端应用程序,并使用实体框架将其存储在数据库中。

现在,一切正常,字节数组确实存储在数据库中,但是即使我使用较小的文件,它也会花费很长时间。一个简单的556kb pdf文件可能需要十分钟才能完全传输。我的web.config中有一个很高的maxAllowedContent

这是我的ajax

                $.ajax({
                    type: "POST",
                    url: serverURL + "Save/Files",
                    crossDomain: true,
                    dataType: 'json',
                    cache: false,
                    headers: {
                        "Authorization": /*An access token goes here*/
                    },
                    data: {
                        "File": bytes
                    },
                    success: function () {
                        console.log("it worked!");   
                    },
                    error: function (data) {
                        console.log("didn't work");
                        console.log(data);
                    }
                })

这是我在WebApi中的发布方法

    [Authorize]
    [ResponseType(typeof(TB_Files))]
    [Route("Route")]
    public IHttpActionResult PostTB_Files(TB_Files pTB_Files)
    {
        db.TB_Files.Add(pTB_Files);

        db.SaveChanges();

        return Ok<TB_Files>(pTB_Files);
    }

前端的文件是Javascript Uint8Array,并以varbinary的形式存储在数据库中。

0 个答案:

没有答案