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

时间:2021-08-14 04:58:24

问题描述

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 *


最后发现解决了该问题。