来自darksky.net的访问控制 - 允许来源错误请求数据

问题描述:

我试图使用their api从“darksky.net”获取信息。来自darksky.net的访问控制 - 允许来源错误请求数据

var xhr = new XMLHttpRequest(); 
    xhr.open(method, url, true); 
     xhr.onload = function() { 
      if (this.status >= 200 && this.status < 300) { 
       resolve(xhr.response); 
      } else { 
       reject({ 
        status: this.status, 
        statusText: xhr.statusText 
       }); 
      } 
     }; 

error in chrome

请回答只有在纯JavaScript。

darksky FAQ开始,您应该为API调用设置代理服务器。

对不起关于pure javascript。这是不可能的。

为什么我得到的错误不“访问控制允许来源”标头 现在,当我试图调用API所请求的资源?

我们非常重视在黑暗天空的安全。作为安全预防措施,我们在服务器上禁用了禁用的跨源资源共享(CORS)。

您的API调用包含您的秘密API密钥作为请求的一部分。如果 您将从面向客户端的代码进行API调用,则任何人都可以提取并使用您的API密钥,这会导致您要支付的帐单数量为 。我们禁用CORS来帮助保持您的API秘密密钥 的秘密。

为了防止API密钥滥用,您应该设置一个代理服务器,以便在后台对我们的API进行 调用。然后,您可以在不暴露您的API密钥的情况下为您的客户提供 的预测。

问题出在后端。您需要针对Cors的网页API调整