解决ajax XMLHttpRequest 跨域上传文件失败问题

问题描述

Ajax XMLHttpRequest 跨域上传文件失败,服务器为apache并配置使用https,小文件上传是可以的一般不超过10k,另外直接通过ip可以上传大于10k或者更大的文件,当通过域名访问时会导致该问题。


解决方式:


在网上查询了很多资料,然后也对比了header中的值,发现通过Ajax 上传自动添加以下header内容

X-Requested-With:XMLHttpRequest

通过代理去掉该header是可以正常访问的,通过查询网上的一些资料说明,XMLHttpRequest 跨域导致了该问题。

如何解决跨域问题,首先想到的是Access-Control-Allow-Origin,在请求的header中加入以下header尝试

Access-Control-Allow-Origin*


最后发现解决了该问题。

相关文章

IE6是一个非常老旧的网页浏览器,虽然现在很少人再使用它,但...
PHP中的count()函数是用来计算数组或容器中元素的个数。这个...
使用 AJAX(Asynchronous JavaScript and XML)技术可以在不...
Ajax(Asynchronous JavaScript and XML)是一种用于改进网页...
本文将介绍如何通过AJAX下载Excel文件流。通过AJAX,我们可以...
Ajax是一种用于客户端和服务器之间的异步通信技术。通过Ajax...