为什么合法的角色请求可以在Chrome上运行?

时间:2017-12-28 18:57:25

标签: javascript cors fetch-api

我正在尝试处理从服务器获取的csv文件,该服务器与服务该脚本的服务器不同:

fetch("https://raw.githubusercontent.com/webflo/countries/master/countries.csv").then(response=>{
    console.log(response.body)
})

这适用于Chrome,response.bodyReadableStream,我可以从中阅读内容。

但是在FireFox上,response没有body,因此它是undefined

这是什么原因以及如何修改脚本以便它也能在FireFox上运行?

1 个答案:

答案 0 :(得分:1)

使用原生fetchresponse.text(),以下在Fi​​refox中可以正常使用



fetch("https://raw.githubusercontent.com/webflo/countries/master/countries.csv")
  .then(response => response.text())
  .then(data => {
    console.log('Data length =', data.length)
    let arr = data.split('\n').map(line => line.replace(/\"/g, '').split(','));
    console.log(arr);
  })