谷歌生成的图像的“cacher层”

时间:2011-06-01 16:30:41

标签: image caching

通过对我 an earlier question 的评论提出问题。我从来没有听说过cacher层。

建议是在这个cacher-layer thingie中缓存谷歌生成的图像。有人可以给出指向这样一层的细节的指针吗? “细节”=它住在哪里?我该如何访问它?等等。

非常感谢!

1 个答案:

答案 0 :(得分:1)

我会解释我的意思。

首先,我需要这个系统,因为Google Chart API有一些请求 - 每日CAP,所以我需要一些东西来绕过它。

发动机非常简单 考虑一下vanilla解决方案:在你的HTML中,你的img'src直接指向google。

<img src="//google.chart.api?params123">

使用cacher,您不会直接指向Google,而是指向您的cacher引擎:

<img src="//yourwebsite/googleImageCacher.php?id=123">

现在你的googleImageCacher.php很简单:

它会检查所请求的图像是否在缓存中找到(可能是文件或其他任何内容)如果它不存在,那么它会要求它谷歌保存并回显。

类似于:(伪代码)

     $imageAssociation = array( '123' => '//google.chart.api?params123'
                                'image2' => '//google.chart.api?otherparma'  );

     if ( file_exists( 'imageCacheDir/' . $_GET['id'] ) ) {

            echo file_get_contents('imageCacheDir/' . $_GET['id']);

     } else {

            //> Request the image to google
            //> Save it in the imageCacheDir
            //> Print it.

     }

当然,您可以在expiration time

中简化一些googleImageCacher.php