外部JavaScript API fetch()失败



我正在学习如何在JavaScript中使用fetch() API。现在我正试图转换一些代码,我有使用curl请求数据从外部API (aviationstack.com)在我的php,并取代它的AJAX调用。我正在使用他们的免费计划,不支持https,因此我试图使用http URL从他们的API获取:

fetch('http://api.aviationstack.com/v1/flights?access_key=myaccesskey').then(function(response) 
{
//some stuff here
});

这个相同的url与旋度没问题我的php代码。问题是API似乎将此调用接收为https,因为它返回给我这个json:

{"error":{"code":"https_access_restricted","message":"Access Restricted - Your current Subscription Plan does not support HTTPS Encryption."}}

有人知道是什么原因引起的吗?我为它抓耳挠耳,却不能使它工作。任何帮助都将是非常感激的,因为我不完全理解这个过程,我很乐意得到一个更好的理解。

编辑:看来我真是个白痴。这一直是一个网络问题……谢谢你的回答,非常感谢

尝试使用我的API密钥(在我的本地机器上):

fetch('http://api.aviationstack.com/v1/flights?access_key=<MY API KEY>').then(function(response) 
{
console.log(response);
});

控制台提供了所需的响应,我得到200年状态。也许你应该检查API密钥。

能否检查/提供请求URL

?

最新更新