Bing提供的API很豐富,除了搜尋外,還增加了廣告Ad、圖檔、新聞、Phonebook、拼寫和視訊的搜尋。而通路協定有三種:JSON, XML和SOAP。JSON協定用于AJAX應用,XML用于Silverlight應用,SOAP用于傳統的.NET等強類型程式。可見,微軟在推出API方面還是很有效率的。
接下來,我們在Visual Studio 2008裡建立一個.NET應用。在Project菜單裡選擇Add Service Reference,在彈出對話框的Address文本框裡填入:
<a href="http://api.search.live.net/search.wsdl?AppID=yourAppId">http://api.search.live.net/search.wsdl?AppID=yourAppId</a>
注意:AppID=後要填寫你申請到的AppId.
<a href="http://images.cnblogs.com/cnblogs_com/aawolf/WindowsLiveWriter/BingAPI_C8AD/BingApi_2.jpg"></a>
在找到LiveSearchService的引用後,将其添加到我們的工程中。接下來,我根據PhoneBook和WebSearch兩個例子寫了DEMO,更多例子可以參考:
<a href="http://msdn.microsoft.com/en-us/library/dd251066.aspx">http://msdn.microsoft.com/en-us/library/dd251066.aspx</a>
需要提醒的是,可能是文檔沒有更新,Bing API的類名稱還會發生變化。我發現在2009年6月8日導出的引用中,LiveSearchService的名稱變成了LiveSearchPortTypeClient。Web Search的代碼如下:
從代碼上來看,很簡單,先建立一個LiveSearchPortTypeClient的對象,然後,建立SearchRequest對象,在Request裡需要設定的是AppId,Query和Sources。AppId不用多說了,Query裡填我們要查的關鍵字,Sources裡指定SourceType,我們這裡指定的是SourceType.Web。
<a href="http://images.cnblogs.com/cnblogs_com/aawolf/WindowsLiveWriter/BingAPI_C8AD/image_2.png"></a>
将SearchRequest參數傳遞給LiveSearchPortTypeClient的Search方法,會傳回一個SearchResponse的對象,裡邊包含我們的搜尋結果。結果會包含在response.Web.Results對象裡,最主要的參數是Title、Description和Url。
最後的運作結果就是這樣的了:
<a href="http://images.cnblogs.com/cnblogs_com/aawolf/WindowsLiveWriter/BingAPI_C8AD/BingApi2_2.jpg"></a>
Bing的好壞還需要時間檢驗,但是Bing API和Google API應該差不多,而且考慮了不同使用者的需求,這也許就是軟體公司和網際網路公司不一樣的地方。同時推出的還有Bing Map API,改天試一下。
本文轉自馬甯部落格園部落格,原文連結:http://www.cnblogs.com/aawolf/archive/2009/06/08/1498696.html,如需轉載請自行聯系原作者