我正在使用Zend_Gdata插件使用Cakephp 1.2在我们的Web应用程序中对Youtube帐户凭据进行身份验证。

Zend / Gdata / ClientLogin.php文件用于调用youtube控制器文件中的身份验证方法,如下所示:

App::import('Vendor', 'Zend_Gdata_ClientLogin', true, false,'Zend/Gdata/ClientLogin.php');


Zend库根据需要位于“ vendors”文件夹中,因此上述导入应该有效。

但是在Linux环境中托管时,应用程序在到达此行时挂起。在Windows中可以正常工作。

我已尝试查明错误可能在哪里,但是由于未导入ClientLogin.php文件,因此我似乎无法走得更远。

在Windows以外的Linux环境中,是否有特定步骤配置Zend库?还是cakephp 1.2?

非常感谢在此问题上的任何帮助。我已经坚持了几天了:S

提前非常感谢。

最佳答案

在供应商中创建一个名为zend_include_path.php的文件,并将代码放在下面:

set_include_path(implode(PATH_SEPARATOR, array(
        dirname(__FILE__) . '/ZendGdata/library',
        get_include_path(),
    )));


在您的控制器中:

App::import('Vendor', 'zend_include_path');
App::import('Vendor', 'Zend_Gdata', true, false, 'Zend/Gdata.php');
Zend_Loader::loadClass('Zend_Gdata_YouTube');
Zend_Loader::loadClass('Zend_Gdata_AuthSub');
Zend_Loader::loadClass('Zend_Gdata_ClientLogin');


现在您可以使用以下方法。

$httpClient = Zend_Gdata_ClientLogin::getHttpClient();

10-04 12:11