CORS错误:将CSV文件转换为Javascript数组
我正在尝试将CSV文件转换为javascript数组。在CSV文件中,所有值都位于单独的行上。无论如何,我在Stackoverflow的另一篇文章中找到了这段代码,可以将这样的文件转换为数组:CORS错误:将CSV文件转换为Javascript数组,javascript,arrays,list,csv,Javascript,Arrays,List,Csv,我正在尝试将CSV文件转换为javascript数组。在CSV文件中,所有值都位于单独的行上。无论如何,我在Stackoverflow的另一篇文章中找到了这段代码,可以将这样的文件转换为数组: var adressesList = [] $(document).ready(function() { $.ajax({ type: "GET", url: "Filepath", dataType: "text", success: fun
var adressesList = []
$(document).ready(function() {
$.ajax({
type: "GET",
url: "Filepath",
dataType: "text",
success: function(data) {
processData(data);
}
});
});
function processData(allText) {
var allTextLines = allText.split(/\r\n|\n/);
for (var i = 1; i < allTextLines.length; i++) {
adressesList.push(allTextLines[i]);
}
}
我该怎么解决呢?我看到你可以把文件放到服务器上。但是,难道不应该有一个简单的方法在本地进行吗
谢谢。如果文件是静态的(只需编写一次,并且保持不变),则可以将其导出为常量,而无需使用ajax。有关如何执行此操作的更多信息,请参见此处:
如果文件是动态的,并且会随着时间的推移而改变,那么您需要将其放在可以请求文件的Web服务器上,通常称为“端点”。如果您在不同的域上(例如服务器在foo.com上,您的网站在bar.com上),您需要在服务器设置上添加权限,以允许来自其他域的请求。如果您只需要将此作为本地运行的一次性解决方案,您可能会发现通过加载和处理此文件更容易 例如:
函数句柄文件(文件){
getAsText(文件[0])
}
函数getAsText(文件读取){
const reader=new FileReader()
reader.readAsText(fileToRead)
reader.onload=(事件)=>processData(event.target.result)
}
函数processData(allText){
console.log(所有文本)
//请在下面进行处理
var allTextLines=allText.split(/\r\n |\n/)
对于(变量i=1;i
该文件是静态的,值永远不必更改。是的,那么导出csv就是一种方法。您能详细说明一下并给出一些示例代码吗?
Access to XMLHttpRequest at 'filepat' from origin 'null' has been blocked by CORS policy: Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https.
GET filepath net::ERR_FAILED