0

Cakephp 1.2 を使用して、Zend_Gdata プラグインを使用して、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

よろしくお願いします。

4

1 に答える 1

0

Vendor で 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();
于 2012-07-24T13:50:52.690 に答える