【问题标题】:Ajax request to read csv file content from third-party serverAjax 请求从第三方服务器读取 csv 文件内容
【发布时间】: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 获取内容吗?

【问题讨论】:

    标签: jquery ajax csv jsonp


    【解决方案1】:

    使用 text 代替 jsonp 或 text/csv

    dataType : "text"
    

    例如

    $.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",
        contentType:'application/json;charset=utf-8',               
        success: function (data)
        {
            console.log("success " + data);
        },
        error: function (data) {
            console.log("error " + data);
        }
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-07-21
      • 2016-10-02
      • 2012-08-19
      • 1970-01-01
      • 2021-12-25
      • 2022-11-29
      相关资源
      最近更新 更多