解决错误指定RequestHeader导致后台接受不到FormData数据的问题

在WEB API项目中,使用FormData提交JSON和图片数据时遇到问题,由于错误地设置了RequestHeader,导致Firefox浏览器后台无法正确解析。对比火狐和IE的请求头发现,火狐直接使用指定的Content-Type,缺少分隔符,而IE虽然追加了类型,但不影响解析。这提示我们,理解和审查代码的重要性,避免直接复制未知代码导致的意外问题。
摘要由CSDN通过智能技术生成

问题的起因是现在做的一个WEB API项目中需要以formdata的方式向后台提交数据(包括一个JSON和一张图片)。

之前一直是用以下代码发送数据,没出过问题。

                if (window.XMLHttpRequest) {     //   Mozilla   浏览器                                    //新建XMLHttpRequest对象
                    xmlhttp = new XMLHttpRequest();
                } else if (window.ActiveXObject) {   //   IE   浏览器   
                    try {
                        xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
                    } catch (e) {
                        try {
                            xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
                        } catch (e) { }
                    }
                }

                var fd = new FormData();
                var file = document.getElementById('filebox_file_id_1');
                var fileList = file.files;
                if (fileList.length != 0)
                {

   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值