5

JSONで結果を返すBing検索リクエストのパラメーターを理解するのに役立ちます。
ドキュメント「BingSearchAPIアプリケーションの移行」には次のように記載されています。
To authenticate a Bing Search API request with Windows Azure Marketplace, you must obtain an account key. This mode of authentication replaces the AppID used in the Bing Search API 2.0.

一方、同じドキュメントには、Appidを引き続き使用する次の例が記載されています。

http://api.search.live.net/xml.aspx?Appid=App&query=odata&sources=web&count=2

次のリクエスト:

curl "https://api.datamarket.azure.com/Data.ashx/Bing/SearchWeb/v1/Web?Query=%27xbox%27&$top=50&$format=json$accountKey=TPP....VRTWiq4=$Appid=conceptor"

次のエラーが発生します。
The authorization type you provided is not supported. Only Basic and OAuth are supported

JSON形式で検索結果を取得するためにCURLコマンドラインで使用できるBing検索URLの例を挙げてください。

4

3 に答える 3

8

基本認証ヘッダーでBase64エンコード文字列としてアプリキーを送信する必要があります。

Authorization: Basic {{ encoded_app_key }}

ところで、前の回答は古いBing APIの概要にリンクしているため、データマーケットプレイスAPIを使用している場合は役に立ちません。

これがjQueryを使用した例です。

$.ajax({
    type:'POST',
    url:url,
    headers: {
        "Authorization": "Basic " + encodedAppKey
    }
}).done(function(data) { 
    alert(data);
});

便利なリンク:http ://social.msdn.microsoft.com/Forums/windowsazure/en-US/9f085915-81b6-488d-a348-1c3ca769d44f/migrating-to-windows-azure-bing-search-api-with-jquery -jsonp

于 2013-07-24T22:35:08.687 に答える
1

ここでは、datamarket.azureスタイルのAPI呼び出しのみを使用する必要があります。古いものはもう動作できません。認証の大きな違いは、クエリURLにAppIDを含める必要がないことです。認証ウィンドウがポップアップし、デフォルトのアカウントキー(またはアカウントで作成したキー)を入力するだけで済みます。新しいBingAPIのこの非常に優れた要約を参照してください

于 2012-10-12T19:44:54.913 に答える
1

これらの答えはすべて現在時代遅れです。別のURLにリクエストを送信するには、JSONPを使用する必要があります。

ajaxリクエストでは以下を使用します:

タイプ:'POST'、jsonp: "jsonp"、

于 2017-03-16T22:19:34.127 に答える