我正在使用PHP/ccurl请求播放列表搜索,并且在本地机器上一切正常。
现在我把项目转移到我的网络服务器上,我得到了一个错误:
在API密钥上配置了per-IP或per-Refer限制,请求与这些限制不匹配。如果允许来自此IP或refer的请求,请使用Google开发者控制台更新您的API密钥配置
我保证:a) Youtube数据API在Google开发者控制台中启用b) API密钥正在工作(因为curl请求在我的本地机器上工作)c) 我已经对我的域名进行了外部IP查找,并在Google开发者控制台中将IP输入到该API密钥的允许IP地址中。
那么,考虑到这些事情,为什么我仍然会被谷歌拒绝并发送错误消息呢?
当您在本地机器上进行测试时,您可以在本地运行时创建一个密钥作为"已安装的应用程序"。
当您在web服务器上托管它时,您将创建一个密钥作为"web应用程序",并提供"授权来源"one_answers"重定向uri"。
您必须获取服务器的IP地址(ssh并使用ifconfig
命令,或者登录到您的cpanel并从中获取IP地址)。然后,您必须将此地址添加为YouTube API密钥的授权用户。您将在Google开发人员控制台的"凭据"下的API管理器中进行设置。