2013-03-11 72 views
4

鑑於Bing API文檔主要由錯誤纏繞的雙頁Word文檔組成,因此我一直無法找到在線答案。反覆試驗已經產生了不一致的結果,並且鑑於查詢花費金錢,我寧願不必再猜測和檢查。Bing WebSearch API的查詢長度限制是什麼?

什麼是新的'Azure marketplace'Bing WebSearch API的長度限制?我知道存在某種限制,因爲長時間的查詢往往會返回,「數據提供商的服務未接受請求,團隊正在調查此問題,我們對此造成的不便深表歉意。」但是,無論是字符還是單詞,發生這種情況的查詢長度都會根據輸入的查詢而變化。我正在使用諸如site:和instreamset:等高級操作符來進行相當複雜的查詢,因此要縮小限制的範圍非常困難。即:我已經成功地查詢了超過1800個字符,並且我已經讓它們失敗,但少於1200個字符。

回答

6

得到了微軟的支持答案:

它看起來像抵入數據市場有10240然而查詢 串限制的請求;內容提供商(在這種情況下爲 必應搜索)有2048個字符的限制。

請注意,在這種情況下,「查詢字符串」是整個URL,而不僅僅是「查詢」參數。

一些短於2048個字符的網址出現失敗的原因是由於空間的編碼。在將查詢傳遞給Bing之前,Azure數據市場會對其重新編碼,並使用%20而不是+來對空格進行編碼。因此,要檢查您的請求URL是否在2048個字符以內,請確保對所有特殊字符(包括空格)進行十六進制編碼。

+0

我試了一下,似乎2048的限制是從路徑+查詢字符串計算出來的。即'/搜索?Q = ...'。 Bing非常滿意2047個字符,但回覆404沒有找到2048個字符。 – 2013-10-19 15:41:02

+0

是的,這是正確的。這是包含重要路徑和查詢字符串的整個URL。拋出我的是,即使你將它編碼爲+的空格,它將它們轉換爲%20,並將其計爲三個字符。由於我的查詢時間很長,有很多空間,這就產生了很大的不同。 – 2013-10-20 08:24:37