一尘不染

跨域获取CSV文件

ajax

我似乎无法从Yahoo Finance获得CSV股票文件来“成功”加载。我已经测试了来自其他问题的不同回调和建议,但它们似乎都不起作用-
大多数都没有输出任何内容。

$(document).ready(function(){
    $.ajax({
        url:"http://finance.yahoo.com/d/quotes.csv?s=XOM&f=sn",
        dataType: 'jsonp',
        success: function(data) {
            alert('good');
        },
        error: function(data) {
            alert(data);
        }
    });
});

这段代码会发出警报[object Object](``错误’‘回调),但是可以在网络面板中成功看到CSV文件。网络面板中的数据按预期显示为“
XOM,Exxon Mobile Corpo”(因此确实已加载)。

我想真正的问题是如何获取我知道的数据。我alert现在只想…只想在页面上看到它。我花了无数个小时来摆弄这个,但这根本不起作用。

这是一个jsfiddle:http :
//jsfiddle.net/V94sQ/3/


阅读 234

收藏
2020-07-26

共1个答案

一尘不染

您不能从其他域请求CSV文件,除非它们支持CORS。由于您不控制雅虎,因此您不走运。您将需要使用代理[从自己的服务器请求它,后端使GET请求]或服务,可以使之成为一个JSONP请求。

2020-07-26