No 'Access-Control-Allow-Origin' header is present on the requested resource.

代码

function b(mp4url, title_9) {
  let c = document.createElement('div')
  c.setAttribute('class', 'xiazai')
  c.innerHTML = '下载'
  document.body.appendChild(c)
  c.addEventListener('click', function d(mp4url, title_9) {
    console.log(window.XMLHttpRequest);
    var xhr = null
    xhr = new XMLHttpRequest()
    xhr.responseType = 'blob'
    xhr.onreadystatechange = function (e) {
      let url9 = URL.createObjectURL(e)
      let a = document.createElement('a')
      a.href = url9
      a.download = title_9 + '.mp4'
      a.click()
      a.remove()
    }
    console.log(xhr);
    xhr.open("get", mp4url, true)
    console.log(xhr);
    xhr.send(null)
  })
}
 

下载视频 昨天可以正常下载,今天起床后就会提示被跨域策略阻止,在同一个页面,是什么原因呢,无法修改服务端,只能从前端入手,该如何解决,

跨域了

前端解决不了的,对方网站服务器设置跨域限制了,你有空好好看下跨域访问相关知识

跨域,可能是对方服务器开启了跨域限制了,前端没有办法解决,如果这个服务不是你自己的,那就使用node自己搭一个服务,然后代理一下

是跨域问题

已解决,经过多次测试发现晚上能跨域下载是因为晚上网站繁忙,把请求分发到了cdn,所以可以下载,只要把url保留参数替换为cdn的网址即可 ohyear