傳送和使用 Bing 當地商家搜尋 API 查詢和回應
警告
在 2020 年 10 月 30 日,Bing 搜尋 API 從 Azure AI 服務移至 Bing 搜尋服務。 本檔僅供參考。 如需更新的檔案,請參閱 Bing 搜尋 API 檔案。 如需建立 Bing 搜尋新 Azure 資源的指示,請參閱透過 Azure Marketplace 建立 Bing 搜尋資源。
您可以將搜尋查詢傳送至其端點,並包括所需的 Ocp-Apim-Subscription-Key
標頭,以從 Bing 當地商家搜尋 API 取得本機結果。 除了可用的 標頭 和 參數之外,搜尋還可以透過指定 搜尋區域的地理界限 和返回位置的 類別 來進行自訂。
建立請求
若要將要求傳送至 Bing 當地商家搜尋 API,請在將搜尋字詞新增至 API 端點之前,先將搜尋字詞附加至 q=
參數,並包括 Ocp-Apim-Subscription-Key
標頭。 例如:
https://api.cognitive.microsoft.com/bing/localbusinesses/v7.0/search?q=restaurant+in+Bellevue
完整的要求URL語法如下所示。 請參考 Bing 當地商家搜尋 API 快速入門,以及 標頭 和 參數 的參考資料,以取得關於傳送要求的更多資訊。
如需當地搜尋類別的資訊,請參閱 當地商家搜尋 API搜尋類別。
https://api.cognitive.microsoft.com/bing/v7.0/localbusinesses/search[?q][&localCategories][&cc][&mkt][&safesearch][&setlang][&count][&first][&localCircularView][&localMapView]
使用回應
來自 Bing 當地商家搜尋 API 的 JSON 回應包含 SearchResponse
物件。 API 會在 [places
] 字段中傳回相關的搜尋結果。 如果找不到任何結果,則回應中將不會包含 places
欄位。
備註
由於 URL 格式和參數可能會變更而不通知,因此請使用所有 URL as-is。 除非有特別說明,否則您不應依賴於 URL 的格式或參數。
{
"_type": "SearchResponse",
"queryContext": {
"originalQuery": "restaurant in Bellevue"
},
"places": {
"totalEstimatedMatches": 10,
. . .
搜尋結果屬性
API 傳回的 JSON 結果包含下列屬性:
- _type
- 地址
- 實體呈現信息
- 地理
- 識別碼
- 名稱
- routeablePoint
- 電話
- URL
如需有關標頭、參數、市場代碼、回應物件、錯誤等的概況,請參閱 Bing 地方搜尋 API v7 參考。
備註
貴使用者或代表您的第三方,不得使用、保留、儲存、快取、共用或散佈來自本機搜尋 API 的任何數據,以便測試、開發、定型、散發或提供任何非Microsoft服務或功能。
範例 JSON 回應
下列 JSON 回應包含查詢所指定的搜尋結果 ?q=restaurant+in+Bellevue
。
Vary: Accept-Encoding
BingAPIs-TraceId: 5376FFEB65294E24BB9F91AD70545826
BingAPIs-SessionId: 06ED7CEC80F746AA892EDAAC97CB0CB4
X-MSEdge-ClientID: 112C391E72C0624204153594738C63DE
X-MSAPI-UserState: aeab
BingAPIs-Market: en-US
X-Search-ResponseInfo: InternalResponseTime=659,MSDatacenter=CO4
X-MSEdge-Ref: Ref A: 5376FFEB65294E24BB9F91AD70545826 Ref B: BY3EDGE0306 Ref C: 2018-10-16T16:26:15Z
apim-request-id: fe54f585-7c54-4bf5-8b92-b9bede2b710a
Strict-Transport-Security: max-age=31536000; includeSubDomains; preload
x-content-type-options: nosniff
Cache-Control: max-age=0, private
Date: Tue, 16 Oct 2018 16:26:15 GMT
P3P: CP="NON UNI COM NAV STA LOC CURa DEVa PSAa PSDa OUR IND"
Content-Length: 978
Content-Type: application/json; charset=utf-8
Expires: Tue, 16 Oct 2018 16:25:15 GMT
{
"_type": "SearchResponse",
"queryContext": {
"originalQuery": "restaurant Bellevue"
},
"places": {
"totalEstimatedMatches": 50,
"value": [{
"_type": "LocalBusiness",
"id": "https:\/\/cognitivegblppe.azure-api.net\/api\/v7\/#Places.0",
"name": "Facing East Taiwanese Restaurant",
"url": "http:\/\/litadesign.wix.com\/facingeastrestaurant",
"entityPresentationInfo": {
"entityScenario": "ListItem",
"entityTypeHints": ["Place", "LocalBusiness", "Restaurant"]
},
"geo": {
"latitude": 47.6199188232422,
"longitude": -122.202796936035
},
"routablePoint": {
"latitude": 47.6199188232422,
"longitude": -122.201713562012
},
"address": {
"streetAddress": "1075 Bellevue Way NE Ste B2",
"addressLocality": "Bellevue",
"addressRegion": "WA",
"postalCode": "98004",
"addressCountry": "US",
"neighborhood": "Bellevue",
"text": "1075 Bellevue Way NE Ste B2, Bellevue, WA 98004"
},
"telephone": "(425) 688-2986"
}],
"searchAction": {
"location": [{
"name": "Bellevue, Washington"
}],
"query": "restaurant"
}
}
}
節流要求
服務和您的訂閱類型會決定您每秒可以執行的查詢次數(QPS)。 請確定您的應用程式包含維持在配額範圍內的邏輯功能。 如果符合或超過 QPS 限制,要求會失敗,並傳回 HTTP 429 狀態代碼。 回應包含 Retry-After
標頭,指出您必須等待多久才能傳送另一個要求。
拒絕服務與限流
此服務會區分阻斷服務 (DoS) 攻擊和 QPS 違規。 如果服務懷疑發生 DoS 攻擊,要求就會成功(HTTP 狀態代碼為 200 OK)。 不過,回應的主體是空的。