2012-03-30 9 views
0

私は現在、イムは、プロキシを介して簡単なZend_Service_Twitter要求をしようと、Zendの方法のいくつかで立ち往生しています、しかし、私は得続ける:Zend_Service_TwitterとZend_Oauth_Token_Accessはプロキシの後ろにありますか?

TCPに接続することができません

://api.twitter.com: 80。エラー#0: php_network_getaddresses:gethostbynameが失敗しました。

私は、HTTPを行うことができる午前自体はZend_Http_Clientのライブラリを呼び出すので、私は私の問題は、私はZend_Service_TwitterへのHttpClientインスタンスを渡すコードであると信じて...しかし、私は推測するに十分な暴言、基本的に私が持っています次のようになります。

$config = array(
       'adapter' => 'Zend_Http_Client_Adapter_Proxy', 
       'proxy_host' => self::PROXY_HOST, 
       'proxy_port' => self::PROXY_PORT, 
       'timeout' => 240, 
      ); 
$httpClient = new Zend_Http_Client(self::TWITTER_API_URL, $config); 

      $token = new Zend_Oauth_Token_Access; 
      $token->setParams(array(
       Zend_Oauth_Token_Access::TOKEN_PARAM_KEY => self::TWITTER_OAUTH_TOKEN, 
       Zend_Oauth_Token_Access::TOKEN_SECRET_PARAM_KEY => self::TWITTER_OAUTH_TOKEN_SECRET 
      )); 


      $twitter = new Zend_Service_Twitter(array(
         'username' => 'MYUSERNAME', 
         'accessToken' => $token 
        )); 
      $twitter->getHttpClient($httpClient); 
      $response = $twitter->account->rateLimitStatus(); 

+0

関連するかどうかわかりませんが、スローされたエラーは最後のコード行で送信されます。$ response = $ twitter-> account-> rateLimitStatus(); –

答えて

1

Zend_Service_Twitterクラスを詳しく見てとっている間は、プロキシパラメータを設定するために必要なことはこれです:

$twitter = new Zend_Service_Twitter(array(
         'username' => 'MYUSERNAME', 
         'accessToken' => $token 
        )); 

$twitter->setLocalHttpClient($twitter->getHttpClient($httpClient)); 

($のHttpClientプロキシ設定が含まれているのZend_Http_Clientのインスタンスであること)

関連する問題