首先,我是这个话题的新手,所以我希望我的问题不是太愚蠢。
我希望我的网站能够访问Google Analytics指标。我遵循了description from google的每一步。不幸的是,当我上传服务器上的所有内容并尝试运行测试站点时,我总是收到以下错误消息:
致命错误:带有消息'此库的未捕获异常'异常' 必须通过作曲家或下载完整的软件包安装。看到 说明书 https://github.com/google/google-api-php-client#installation“。在 /home/users/myftp/dev.mywebsite.com/dashboard/google-api-php-client-master/src/Google/autoload.php:14 堆栈跟踪:#0 /home/users/myftp/dev.mywebsite.com/dashboard/HelloAnalytics.php(8): require_once()#1 /home/users/myftp/dev.mywebsite.com/dashboard/HelloAnalytics.php(104): 抛出getService()#2 {main} /home/users/myftp/dev.mywebsite.com/dashboard/google-api-php-client-master/src/Google/autoload.php 第14行
显然,嵌入Google客户端库存在问题。在错误消息中它说我必须使用Composer,但是在他们说的GitHub文档中,手动下载也没问题。我想最终这应该没有任何区别?我不熟悉作曲家或GitHub,这就是我手动下载它的原因。
我将它上传到服务器上并将其放入HelloAnalytics.php所在的目录中。我通过
在HelloAnalytics.php中解决了这个问题require_once 'google-api-php-client-master/src/Google/autoload.php'
答案 0 :(得分:6)
从外观上看,您使用的是错误的自动加载器。
src/Google/autoload.php
查找作曲家自动加载器,如果它不存在,则会抛出您获得的异常。由于您未使用Composer进行安装,因此未找到该异常并抛出该异常。
如果使用git克隆存储库,您将拥有正确的SPL自动加载器。如果您下载该软件包,它将使用composer autoloader。
尝试使用以下方式下载:
git clone -b v1-master https://github.com/google/google-api-php-client.git
或切换到v1-master分支并改为使用this自动加载器。您将看到master
分支和v1-master
分支之间的文件不同。
答案 1 :(得分:4)
为避免AUTOLOADer错误,请安装MASTER-V1版本:
https://github.com/google/google-api-php-client/tree/v1-master
P.S。如果您将收到其他错误,请确保您已正确包含" SERVICE EMAIL" (就像:xxxxxx@analytics-xxxxx.iam.gserviceaccount.com
)。