添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

2020 年 10 月 30 日,必应搜索 API 从认知服务移动到必应搜索服务。 本文档仅供参考。 有关更新的文档,请参阅 必应搜索 API 文档 。 关于为必应搜索创建新的 Azure 资源的说明,请参阅 通过 Azure 市场创建必应搜索资源

参考本快速入门对必应实体搜索 API 进行第一次调用并查看 JSON 响应。 这个简单的 Ruby 应用程序会向该 API 发送一个新闻搜索查询并显示响应。 GitHub 上提供了此应用程序的源代码。

虽然此应用程序是使用 Ruby 编写的,但 API 是一种 RESTful Web 服务,与大多数编程语言兼容。

  • Ruby 2.4 或更高版本。
  • 创建 Azure 资源

    通过创建以下 Azure 资源之一开始使用必应实体搜索 API。

    必应实体搜索资源

  • 在删除资源前,可通过 Azure 门户使用。
  • 使用免费定价层试用该服务,稍后升级到用于生产的付费层。
  • 必应实体搜索也在 必应搜索 v7 资源 的付费层中提供。
  • 多服务资源

  • 在删除资源前,可通过 Azure 门户使用。
  • 在多个认知服务中对应用程序使用相同的密钥和终结点。
  • 创建并初始化应用程序

  • 在你最喜欢的 IDE 或代码编辑器中创建新闻 Ruby 文件并导入以下包:

    require 'net/https'
    require 'cgi'
    require 'json'
    
  • 为 API 终结点、新闻搜索 URL、订阅密钥和搜索查询创建变量。 你可以使用以下代码中的全局终结点,或者使用资源的 Azure 门户中显示的自定义子域终结点。

    host = 'https://api.bing.microsoft.com'
    path = '/v7.0/search'
    mkt = 'en-US'
    query = 'italian restaurants near me'
    

    设置 API 请求的格式并将其发出

  • 通过将市场变量追加到 ?mkt= 参数,为请求创建参数字符串。 对查询进行编码并将其追加到 &q= 参数。 将 API 主机、路径以及请求的参数组合在一起,将其强制转换为 URI 对象。

    params = '?mkt=' + mkt + '&q=' + CGI.escape(query)
    uri = URI (host + path + params)
    
  • 使用上一个步骤中的变量来创建请求。 将订阅密钥添加到 Ocp-Apim-Subscription-Key 标头。

    request = Net::HTTP::Get.new(uri)
    request['Ocp-Apim-Subscription-Key'] = subscriptionKey
    
  • 发送请求并打印响应。

    response = Net::HTTP.start(uri.host, uri.port, :use_ssl => uri.scheme == 'https') do |http|
        http.request (request)
    puts JSON::pretty_generate (JSON (response.body))
    

    示例 JSON 响应

    在 JSON 中返回成功的响应,如以下示例所示:

    "_type": "SearchResponse", "queryContext": { "originalQuery": "italian restaurant near me", "askUserForLocation": true "places": { "value": [ "_type": "LocalBusiness", "webSearchUrl": "https://www.bing.com/search?q=sinful+bakery&filters=local...", "name": "Liberty's Delightful Sinful Bakery & Cafe", "url": "https://www.contoso.com/", "entityPresentationInfo": { "entityScenario": "ListItem", "entityTypeHints": [ "Place", "LocalBusiness" "address": { "addressLocality": "Seattle", "addressRegion": "WA", "postalCode": "98112", "addressCountry": "US", "neighborhood": "Madison Park" "telephone": "(800) 555-1212" . . . "_type": "Restaurant", "webSearchUrl": "https://www.bing.com/search?q=Pickles+and+Preserves...", "name": "Munson's Pickles and Preserves Farm", "url": "https://www.princi.com/", "entityPresentationInfo": { "entityScenario": "ListItem", "entityTypeHints": [ "Place", "LocalBusiness", "Restaurant" "address": { "addressLocality": "Seattle", "addressRegion": "WA", "postalCode": "98101", "addressCountry": "US", "neighborhood": "Capitol Hill" "telephone": "(800) 555-1212" . . .

    构建单页 Web 应用

  • 什么是必应实体搜索 API?
  • 必应实体搜索 API 参考
  •