使用标记从静态文件中获取CSV以避免跨域策略

时间:2015-03-21 13:13:26

标签: javascript html csv cross-domain-policy

我正在编写一个C ++应用程序,它使用Javascript而不是CSV生成报告数据。我主张HTML和Javascript提供了一个生成和显示报告的强大工具。但是用C ++生成Javascript代码它有点笨拙。

我试图从Javascript中读取CSV,但我发现由于跨域策略,这是不可能的。我希望方便客户查看报告,而无需禁用跨域安全。

有效的代码:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <meta charset="utf-8" />
    <title>Read CSV from static file - Avoiding cross origin</title>
    <script id="data" type="text/csv">
    x, y
    0, 0
    1, 1
    2, 4 
    </script>

  </head>

  <body>        
    <script type="text/javascript">
      var data = document.getElementById('data');
      alert(data.innerHTML);
    </script>
  </body>
</html>

不起作用的代码:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <meta charset="utf-8" />
    <title>Read CSV from static file - Avoiding cross origin</title>
    <script id="data" type="text/csv" src="data.csv"></script>
  </head>

  <body>        
    <script type="text/javascript">
      var data = document.getElementById('data');
      alert(data.text);
    </script>
  </body>
</html>

为什么只使用外部纯文本数据不会显示任何内容?我可以使用<link><meta>代码解决此问题吗?谢谢你的帮助!

0 个答案:

没有答案