1

PHPでBing Image Search APIを実装しています。Bing API が変更されたことは知っていますが、Bing Image Search API を使用するには、Windows の Azure Marketplace を使用する必要があります。

つまり、無料の Bing Search Api サブスクリプションを選択したということです。これにより、1 か月あたり約 5000 のトランザクションが得られます。順調に進んでいますが、取得されている結果は、たとえば 1 か月後に期限切れになる傾向があります。

これが私が使用しているコードです:

     $key = "cricket";
     // Replace this value with your account key
     $accountKey = 'WEGUEed3yF9CI6ZzVblKD0HoMRG3/rOELkCda9VYsuk=';
     $ServiceRootURL =  'https://api.datamarket.azure.com/Bing/Search/';  
     $WebSearchURL = $ServiceRootURL . 'Image?$format=json&Query=';

     $request = $WebSearchURL . urlencode( '\'' . $key . '\'');

     $process = curl_init($request);
     curl_setopt($process, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
     curl_setopt($process, CURLOPT_USERPWD,  $accountKey . ":" . $accountKey);
     curl_setopt($process, CURLOPT_TIMEOUT, 30);
     curl_setopt($process, CURLOPT_RETURNTRANSFER, TRUE);
     $response = curl_exec($process);

     $jsonobj = json_decode($response);

     echo('<ul ID="resultList">');

      foreach($jsonobj->d->results as $value)
     {                        
    echo('<li class="resultlistitem"><a href="' . $value->MediaURL . '">'); 
    echo('<img src="' . $value->Thumbnail->MediaUrl. '"></li>'); 
    }

     echo("</ul>");

このプログラムを実行すると、結果が得られ、画像ソースが得られます。しかし、問題は、画像ソースが実際の画像ソースではないようです。つまり、URL は次のようなものです。

    http://ts4.mm.bing.net/th?id=HN.608026386931518543&pid=15.1

また、このリンクは1か月ほどで期限切れになります....最初はリンクをクリックすると画像を見ることができましたが、1か月後に期限切れになり、今では十字の付いた灰色がかったカメラしか見えません。画像ソースの有効期限が切れていると思います。

どうすればこのことを制限できますか。また、物事を機能させるために、Windows azure market place で何かを行う必要があります。

どんな助けでも大歓迎です

ありがとう

4

1 に答える 1