不使用FormData上传Jquery文件

不使用FormData上传Jquery文件,jquery,ajax,Jquery,Ajax,我正在努力通过ajax表单上传文件,而不使用FormData。FormData不是一个选项,因为表单包含我正在与第三方标记的信用卡信息,我不希望将CC信息提交到我的后端 我确实看到了这一点,我将其作为一个起点,但我对jQuery还相当陌生,并且正在为实现而挣扎 我根本没有收到var文件的提交文件,但其他一切都很好。我是否没有正确收集文件,或者我是否没有以正确的方式将其纳入范围 我的upload.js文件: var file; $("#file").on("change", fun

我正在努力通过ajax表单上传文件,而不使用FormData。FormData不是一个选项,因为表单包含我正在与第三方标记的信用卡信息,我不希望将CC信息提交到我的后端

我确实看到了这一点,我将其作为一个起点,但我对jQuery还相当陌生,并且正在为实现而挣扎

我根本没有收到var文件的提交文件,但其他一切都很好。我是否没有正确收集文件,或者我是否没有以正确的方式将其纳入范围

我的upload.js文件:

var file;
        $("#file").on("change", function(){
            var file = this.files[0],
            filename = this.files[0].name;
            filesize = this.files[0].size;
            //calling alert(file) provides a response of [object file] 
        })

function handleResponse(response) {
    // fires if credit card info is successfully tokenized
    if (response.status_code === 201) {

        var fundingInstrument = response.cards != null ? response.cards[0] : response.bank_accounts[0];

        //rest of the form inputs
        var name = $('#name').val();
        var contact_name = $('#contact_name').val();
        var cell = $('#cell').val();
        var address_1 = $('#address_1').val();
        var city = $('#city').val();
        var state = $('#state').val();
        var zip = $('#zip').val();
        var tax = $('#tax').val();

        //trying to bring file var in scope 
        var file = file;


        // ajax .post
        jQuery.post(baseURL+'/contractors/edit', {
            uri: fundingInstrument.href,
            name: name,
            contact_name: contact_name,
            cell: cell,
            file: file,
            address_1: address_1,
            city: city,
            state: state,
            zip: zip,
            tax: tax,
            file: file,
        }, function(r) {
            // Check backend response
            if (r.status === 200) {...

如果没有formData,您无法使用ajax上载文件,这是无法完成的。您必须研究旧的iFrame技术,但是您确定您应该处理信用卡信息吗?如果您使用HTTPS,则连接是加密的,因此您可以发布CC标记化表单数据,加密SSL证书将保护表单数据发布到后端