问题描述
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*
最后发现解决了该问题。