我正在尝试制作一个服务器应用程序,定期从我自己的GA帐户中提取Google Analytics数据。请注意,这是一个访问我自己数据的个人服务器端应用程序,即没有最终用户访问此应用程序。
因此,我在Google API Console中将应用程序注册为服务应用程序,这为我提供了一个客户机ID和一个私钥。据我所知,服务应用程序不使用应用程序机密和重定向URL,因为在此服务器到服务器身份验证流中没有最终用户。实际上,Google API控制台没有给我任何秘密,也没有提示我输入重定向URL。
不幸的是,我不知道如何在Google's PHP Client API中验证我的服务应用程序。有大量文档介绍如何使用终端用户对web应用程序进行身份验证。
谷歌的文档建议使用it is possible to authenticate server-to-server by signing a JWT request with the private key。我只是不知道如何在PHP client API中做这件事(尽管我已经浏览了源代码,并且有一个用私钥签署请求的definitely a script )。
我是不是漏掉了什么?如何使用私钥和Google PHP客户端API对服务应用程序执行身份验证?
为清晰起见进行了编辑
发布于 2012-03-27 00:40:06
Google API PHP客户端现在支持中继上的服务帐户。
这个实现还没有发布,所以您需要checkout最新版本的PHP客户端。
我准备了一个示例应用程序,演示如何使用服务帐户访问Google预测API。要查看该示例,请查看examples/prediction/serviceAccount.php或访问:http://code.google.com/p/google-api-php-client/source/browse/trunk/examples/prediction/serviceAccount.php
发布于 2012-03-26 05:15:00
如果您使用的是Google's PHP client API,则转到Google API Console并单击左侧的API Access
。
然后是Create a Client ID
。这将为您提供secret
,它是您设置redirect URL
的位置。它不会给你一个重定向的URL --这是应用程序在认证后发送给用户的URL。
这里有一些你可以查看的other authentication methods。
发布于 2012-09-20 05:34:55
你可以使用非常有用的php库GAPI (Google Analytics API PHP Interface)在没有OAuth的情况下访问Google Analytics。它很容易使用。
https://stackoverflow.com/questions/9863509
复制相似问题