在本地主机上的php中集成youtube API

在本地主机上的php中集成youtube API,php,youtube-api,localhost,youtube-data-api,Php,Youtube Api,Localhost,Youtube Data Api,我正在本地计算机上开发一个PHP应用程序,并尝试使用公共数据API。密钥已经生成,并且可以在线正常工作,但是只要我尝试在本地主机上执行它,它就会返回 未配置访问权限。请使用Google开发者控制台为您的项目激活API 我已将这些行添加到开发人员控制台中的“允许引用者”部分 http://127.0.0.1 127.0.0.1 http://localhost/ localhost http://myIpAddress myIpAddress 他们似乎都帮不了忙。这是通过GET发送的查询: ht

我正在本地计算机上开发一个PHP应用程序,并尝试使用公共数据API。密钥已经生成,并且可以在线正常工作,但是只要我尝试在本地主机上执行它,它就会返回

未配置访问权限。请使用Google开发者控制台为您的项目激活API

我已将这些行添加到开发人员控制台中的“允许引用者”部分

http://127.0.0.1
127.0.0.1
http://localhost/
localhost
http://myIpAddress
myIpAddress
他们似乎都帮不了忙。这是通过GET发送的查询:

https://www.googleapis.com/youtube/v3/playlistItems?part=snippet&playlistId=######&fields=items%2Fsnippet&key=#######
从中,假设您已经创建了一个项目,请选择您正在处理的项目


然后从左侧的侧菜单中选择“API&Auth”,然后选择“API”。在这个屏幕上,你必须搜索YouTube API,然后单击它旁边的“打开”按钮。

我找到了。我正在使用浏览器键。不知道有什么不同。生成了服务器密钥,一切正常。

根据您的回答@neki doar fraer,我为本帖的其他读者做了更清楚的解释:

  • 如果应用程序在服务器上运行,请使用服务器密钥。不要用这个 密钥位于服务器代码之外。例如,不要将其嵌入到web中 页为了防止配额被盗,请限制您的密钥,以使请求 仅允许从服务器的源IP地址访问

  • 如果应用程序在客户端(如web)上运行,请使用浏览器键 浏览器为了防止您的密钥在未经授权的站点上使用, 仅允许来自您管理的域的转介


我的问题与这里描述的案例无关,但可能会帮助其他人

我有一个场景,在从旧API迁移之后,API在线运行良好,但在localhost(WAMP)上运行不好

修复程序与cURL有关,我真的无法解释为什么它可以在线工作,我不是专家,它与SSL有关

基本上,您需要使用

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

在本地测试已经完成的事情时,我总是编辑我的HOSTS文件,将域指向LOCALHOST。我在问题中写道,它在网上起作用“localhost”是问题所在。您是否尝试添加
http://localhost
到凭证页面上的JavaScript源代码?我不明白您所说的JavaScript源代码是什么意思。我有一个javascript文件,它通过ajax请求调用php文件。您的意思是我应该包括javascript文件的完整路径,如“”?我的意思是在Google开发者控制台中,在左侧的凭据选项卡下。这里有一个叫做Javascript的部分。我懂了。但这是给OAuth的。我正在使用公共数据api。我在帖子里提到过。