【发布时间】:2017-01-29 14:19:57
【问题描述】:
我想使用 ajax 读取 URL 为“http://real-chart.finance.yahoo.com/table.csv?s=CVX&a=01&b=19&c=2001&d=01&e=19&f=2016&g=v&ignore=.csv”的 csv 文件的内容。我陷入了错误:
如果我在下面尝试,我会得到 CORS 错误
$.ajax({
url: 'http://real-chart.finance.yahoo.com/table.csv?s=CVX&a=01&b=19&c=2001&d=01&e=19&f=2016&g=v&ignore=.csv',
type: 'GET',
dataType: "text/csv",
contentType:'application/json;charset=utf-8',
success: function (data)
{
console.log("success " + data);
},
error: function (data) {
console.log("error " + data);
}
});
由于我无法更改服务器端,所以我更改为使用带有以下代码的 jsonp,它返回 200 并且我可以在响应正文中查看数据,但是我收到错误“'Dividends' is undefined”,并且它出错了行,我无法获得响应数据。我不明白为什么它会读取内容,甚至输出错误“股息”,这是 csv 文件中的第二列。
$.ajax({
url: 'http://real-chart.finance.yahoo.com/table.csv?s=CVX&a=01&b=19&c=2001&d=01&e=19&f=2016&g=v&ignore=.csv',
type: 'GET',
dataType: "jsonp",
success: function (data)
{
console.log("success " + data);
},
error: function (data) {
console.log("error " + data);
}
});
根据我的研究,我的数据类型似乎是 jsonp,返回数据类型是 csv,所以 Ajax 会出现错误状态成功。
您能告诉我如何从 URL 获取内容吗?
【问题讨论】: