Javascript jquery ajax上传表单使用授权头序列化

Javascript jquery ajax上传表单使用授权头序列化,javascript,jquery,ajax,asp.net-web-api,Javascript,Jquery,Ajax,Asp.net Web Api,我正在开发一个Web Api,它使用一个自定义的AuthorizationFilterAttribute来检查请求头中的授权头中是否有有效的apikey 我有这个工作的GET和POST请求。 发布表单时,我使用jQuery序列化表单,然后发布它。 jQuery代码如下所示: var postURL = "@localPostUrl"; var serializedForm = $('form').serialize(); $('input#submitButton').click(functio

我正在开发一个Web Api,它使用一个自定义的AuthorizationFilterAttribute来检查请求头中的授权头中是否有有效的apikey

我有这个工作的GET和POST请求。 发布表单时,我使用jQuery序列化表单,然后发布它。 jQuery代码如下所示:

var postURL = "@localPostUrl";
var serializedForm = $('form').serialize();
$('input#submitButton').click(function () {
    $.ajax({
        url: postURL,
        type: 'post',
        headers: {
            Authorization: 'blaBLA'
        },                
        dataType: 'json',
        data: serializedForm,
        success: function (data) {
            alert(data);
        }
    });
});
因此,当在表单上单击id为submitButton的按钮时,它将序列化表单内容,然后将其与标题中的授权令牌一起发布

Hoever,在一个表单中,我在发布时还需要上传一个文件。如果我检查Web Api上的request.Files,它只是空的,所以我猜该文件没有发布

我使用jQuery发布表单,因为我需要在标题中发送身份验证令牌,而使用submit按钮发送它不起作用

所以现在我面临着僵局。我需要使用jQuery发送身份验证令牌,但我还需要上传一个文件,它们不能一起工作


有人已经解决了这个问题吗?

@zer02您提供的链接与我已经做的一样。因此,它在发送请求之前添加了一个头。这没问题。问题是,在使用jQuery发布表单时,文件没有序列化/上载。