当前位置: 首页 > 知识库问答 >
问题:

无“访问控制-允许-源”:读取 CSV、D3 [重复]

濮阳赞
2023-03-14

我试图从源代码中读取csv格式https://stats.oecd.org/Index.aspx?DataSetCode=WILD_LIFE.

设 x 为上面的网址。

 <script type="text/javascript">  
  var data_threatened = d3.csv(x)
   .then(function(data){
    console.log(data);
  })  
  </script>

但是,当我在本地主机上运行此脚本时,我收到以下消息:

“获取”的访问权限https://stats.oecd.org/Index.aspx?DataSetCode=WILD_LIFE“从起源”http://localhost:8888'已被CORS策略阻止:请求的资源上不存在'Access Control Allow Origin'标头。如果不透明响应满足您的需求,请将请求的模式设置为“无cors”,以获取禁用cors的资源。

未捕获(在promise中)类型错误:无法提取

这个街区附近有路吗?

共有1个答案

曹建华
2023-03-14

获取文件并从与脚本运行相同的来源提供它将是最容易的。例如。PHP不关心CORS(假设该文件偶尔会更改)。如果它没有更改,即使手动将其放置在那里也足够了。

要让服务器端脚本获取文件,然后将其作为同源文件提供,而不缓存它:

<?php
    $url = "https://stats.oecd.org/Index.aspx?DataSetCode=WILD_LIFE";
    header("Content-type: text/csv");
    echo file_get_contents($url);
?>

任何服务器端脚本语言都应该能够做到这一点;我使用PHP只是为了提供一个例子。人们可以将WILD_LIFE作为变量,以便它可以用来获取任何数据集。

 类似资料:
  • 问题内容: 我看到以下错误: 使用此代码: 是什么原因引起的,如何解决? 问题答案: 在当前域之外发出ajax请求时,Javascript是受限制的。 例1:您的域名为example.com,并且您想向test.com提出请求=>您不能。 例2:您的域名是example.com,并且您想向inner.example.com发送请求,但是您不能。 例3:您的域名为example.com:80,并且您

  • 问题内容: 我尝试使用以下代码通过$ http(角度)发送http请求: 但这不起作用,并且我在Web控制台中有此错误: 你有解决方案吗 ? 问题答案: 您看到此错误是由于在浏览器中实现的称为Same Origin Policy的安全机制所致。 基本上,这是由于您的网页尝试访问驻留在与网页本身不同的主机,端口或方案(HTTP / HTTPS /文件等)所在的服务器上的资源而引起的。 为了解决此问题

  • 我正在创建一个脚本,加载在其他网站的外部。它加载CSS和HTML,在我自己的服务器上工作得很好。 但还是不管用。

  • 我有错误: XMLHttpRequest 无法加载 http://localhost:5984/cp_config/。当凭据标志为 true 时,不能在“访问控制-允许-源”标头中使用通配符“*”。因此,不允许访问源“http://localhost”。XMLHttpRequest 的凭据模式由 withCredentials 属性控制。 但我有一个标题: 我该如何解决这个问题?

  • 我正在用POST测试JS。但是我没有成功。 使用代码: 我得到以下错误: 奇怪的是请求头没有通过以下行正确设置: 请求头如下所示:

  • 我正在尝试访问 Spotify API 令牌,如下所示: 但服务返回以下错误: XMLHttpRequest无法加载https://accounts.spotify.com/api/token.请求的资源上不存在“Access-Control-Allow-Origin”标头。因此,不允许访问源“http://www.bancadigital.com.br”。 有人知道我如何能访问服务吗?