快速入门:使用 Node.js 调用必应自定义搜索终结点

警告

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

使用此快速入门了解如何从必应自定义搜索实例请求搜索结果。 虽然此应用程序是以 JavaScript 编写的,但必应自定义搜索 API 是一种 RESTful Web 服务,与大多数编程语言兼容。 该示例的源代码可在 GitHub 上获得。

先决条件

创建 Azure 资源

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

必应自定义搜索资源

  • 在删除资源前,可通过 Azure 门户使用。
  • 使用免费定价层试用该服务,稍后升级到用于生产的付费层。

多服务资源

  • 在删除资源前,可通过 Azure 门户使用。
  • 在多个 Azure AI 服务中对应用程序使用相同的密钥和终结点。

创建并初始化应用程序

  • 在偏好的 IDE 或编辑器中创建新的 JavaScript 文件,然后为请求库添加 require() 语句。 为订阅密钥、自定义配置 ID 和搜索词创建变量。

    var request = require("request");
    
    var subscriptionKey = 'YOUR-SUBSCRIPTION-KEY';
    var customConfigId = 'YOUR-CUSTOM-CONFIG-ID';
    var searchTerm = 'microsoft';
    

发送和接收搜索请求

  1. 创建一个变量用于存储在请求中发送的信息。 构造请求 URL,方法是:将搜索词追加​​到 q= 查询参数后面,并将搜索实例的自定义配置 ID 追加​​到 customconfig= 参数后面。 使用与号 (&) 分隔参数。 可以为你的资源使用以下代码中的全局终结点,或者使用 Azure 门户中显示的自定义子域终结点。

    var info = {
        url: 'https://api.cognitive.microsoft.com/bingcustomsearch/v7.0/search?' + 
            'q=' + searchTerm + "&" +
            'customconfig=' + customConfigId,
        headers: {
            'Ocp-Apim-Subscription-Key' : subscriptionKey
        }
    }
    
  2. 使用 JavaScript 请求库将搜索请求发送到必应自定义搜索实例,并输出有关结果的信息,包括请求的名称、URL,以及上次抓取网页的日期。

    request(info, function(error, response, body){
            var searchResponse = JSON.parse(body);
            for(var i = 0; i < searchResponse.webPages.value.length; ++i){
                var webPage = searchResponse.webPages.value[i];
                console.log('name: ' + webPage.name);
                console.log('url: ' + webPage.url);
                console.log('displayUrl: ' + webPage.displayUrl);
                console.log('snippet: ' + webPage.snippet);
                console.log('dateLastCrawled: ' + webPage.dateLastCrawled);
                console.log();
            }
    

后续步骤