我以为这很简单,但是由于某种原因,我对此感到不满。
我正在使用PHP + CURL尝试检索Web字体列表。代码很简单:
$url = "https://www.googleapis.com/webfonts/v1/webfonts?sort=popularity&key=MY_SERVER_APPS_KEY";
$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
$google_response = curl_exec($ch);
curl_close($ch);
该代码已打入Google,但$ google_response始终返回:
"error": {
"code": 403,
"errors": [
{
"domain": "usageLimits",
"reason": "accessNotConfigured",
"message": "Access Not Configured"
}
],
"message": "Access Not Configured"
}
我已经设置了服务器访问密钥,并将两个Web服务器的API密钥都放在了它上面。 (要验证我的IP,我在curlmyip.com上做了一个WGET。)我还从“服务”选项卡中启用了“ Web Fonts Developer API”。
我有什么可以忽略的吗?
我找到了解决方案。显然,我需要注册服务器的IPv6地址,而不是IPv4地址。添加它们后,无需任何代码更改即可工作。
对于我来说,未启用所需的API。
要启用:
API Manager
先删除所有“允许的Ips”,然后再删除任何IP
我按顺序尝试了上面列出的解决方案,但没有得到结果。发生这种情况的几个月以来,YouTube,Dialogflow和Google+ API集成一直处于无效状态。
最终唯一的解决方法是: