3

Goutte に問題があるか、実際には Goutte の Guzzle 部分です。

Guzzle はすべての GET 呼び出しを自動的にキャッシュします。無効にしようとしましたが、実際には機能しません。

ここでわかるように、キャッシュ パラメーターを直接 Guzzle コンストラクターに解析しています。

use Goutte\Client;
use Guzzle\Http\Client as GuzzleClient;

$client = new Client();

$client->setClient(new GuzzleClient('/', array(
    'curl.options' => array(
        CURLOPT_COOKIESESSION => true,
    CURLOPT_COOKIEJAR => 'cookie.txt',
        CURLOPT_FRESH_CONNECT => true,
        CURLOPT_TIMEOUT => 0
    ),
    'params.cache.override_ttl' => 0,
    'params.cache.default_ttl' => 0,
    'params.cache.revalidate'   => 'always'
)));

ただし、これは変更を加えません。cacheplugin のドキュメントの時点で (参照: http://guzzlephp.org/guide/http/caching.html )

このコード:

echo $client->getClient()->get('/')->getParams()->get('cache.override_ttl');

cache.override_ttl の現在の値を出力する必要がありますが、これは何も出力しません。

私が見落としているのは、Goutteラッパーに関するものに違いないと思います。誰にもアイデアはありますか?

4

0 に答える 0