2017-11-13 9 views
0

Bing SearchのHosted UIバージョンを使用する予定で、クエリパラメータ 'q'のみをサポートしていることが判明しました。このパラメータはDrupalで使用することはできません。これはDrupalの標準パラメータである 'q'と衝突します。Drupal 7でBingカスタム検索APIを使用する

Drupalパラメータ 'q'を変更せずにBing Search Hosted UIを使用することはできますか?

おかげ

+1

さらに理解してください:なぜこれがPHPでクラッシュするのですか?次のようなことができます:$ result = file_get_contents($ url。 "?q ="。urlencode($ query)、false、$ context);ここで、$ urlはcustomsearch.aiで提供されるエンドポイントURLです。$ queryはユーザー生成クエリです(ここで_ ** q ** _を使用する必要はありません)。$ headers = "Ocp-Apim-Subscription-Key:$ key \ r \ n "; $ options = array( 'http' =>配列( 'header' => $ headers、 'method' => 'GET')); $ context = stream_context_create($ options)。 ** Web検索** PHP呼び出しについてはhttps://docs.microsoft.com/en-us/azure/cognitive-services/bing-web-search/quickstarts/phpを参照してください。 – Ronak

+0

ありがとうございます。これはうまくいきましたが、 'customconfig'で作業するには軽微な変更を加えなければなりませんでした。 $ result = file_get_contents($ url。 "?q ="。urlencode($ query)。 "&customconfig = MYCUSTOMCONFIG&responseFilter = Webページ&mkt = en-us&safesearch =中"、false、$ context); – user2574948

答えて

0

@ user2574948で上記のコメントに基づいて正解を繰り返してください。 YOUR_QUERY、YOUR_KEY、YOUR_CUSTOMCONFIGを置き換えるだけで動作します。

$endpoint = 'https://api.cognitive.microsoft.com/bingcustomsearch/v7.0/search'; 
$term = 'YOUR_QUERY'; 
$headers = "Ocp-Apim-Subscription-Key: YOUR_KEY\r\n"; 
$options = array ('http' => array (
         'header' => $headers, 
         'method' => 'GET')); 
$context = stream_context_create($options); 
$result = file_get_contents($url . "?q=" . urlencode($query) . "&customconfig=YOUR_CUSTOMCONFIG&responseFilter=Webpages&mkt=en‌​-us&safesearch=Moder‌​ate", false, $context); 
0

Bing searchモジュールを使用してみてください。

Bing Webサービスから結果を取得する検索タブを提供します。検索クエリはサイトのセットに限定することができ、さまざまな高度な検索クエリ文字列を使用できます(またはすべての検索クエリに追加できます)。

+0

このモジュールは古いAPI(v2)を使用しているため、Bing Search API v7またはHosted UIを使用しています。 – user2574948

関連する問題