首页 > web前端 > js教程 > 正文

Bing新闻搜索API中originalImg参数的正确使用指南

霞舞
发布: 2025-09-27 13:50:01
原创
208人浏览过

Bing新闻搜索API中originalImg参数的正确使用指南

本教程深入探讨Bing新闻搜索API中originalImg参数的正确用法。许多开发者在使用/news端点时发现该参数无法获取原始图片URL,本文将根据官方文档明确指出,originalImg参数仅适用于/news/search端点,并提供示例代码和详细解释,帮助开发者避免常见误区,确保有效获取新闻图片信息。

1. Bing新闻搜索API概述

bing新闻搜索api是微软认知服务的一部分,允许开发者通过编程方式获取来自bing搜索引擎的新闻内容。它提供了多种功能,包括按类别、区域搜索新闻,以及获取热门新闻等。在使用该api时,开发者常常需要获取与新闻条目关联的图片信息,其中originalimg参数旨在提供新闻的原始图片url。

2. originalImg参数的意图与常见误区

originalImg参数的本意是让API在返回新闻图片信息时,除了缩略图(thumbnail)外,还能提供新闻文章中使用的原始尺寸图片URL(通过contentUrl字段)。然而,许多开发者在使用该参数时发现,即使将其设置为true,API响应中也仅包含缩略图信息,而缺少原始图片的contentUrl,这导致了对API行为的困惑。

问题示例:

以下是一个使用/news端点并尝试通过originalImg=true获取原始图片的请求示例:

const url = 'https://bing-news-search1.p.rapidapi.com/news?&originalImg=true&category=india&cc=in&safeSearch=Off&textFormat=Raw';
const options = {
    method: 'GET',
    headers: {
        'X-BingApis-SDK': 'true',
        'X-RapidAPI-Key': 'YOUR_RAPIDAPI_KEY', // 请替换为您的实际API Key
        'X-RapidAPI-Host': 'bing-news-search1.p.rapidapi.com'
    }
};

// 假设通过fetch(url, options)获取响应
// ...
登录后复制

实际输出:

在上述请求中,即使设置了originalImg=true,API返回的图片信息通常仍只包含缩略图,例如:

{
  "url": "https://www.msn.com/en-in/news/world/sc-refuses-to-entertain-pil-for-inauguration-of-new-parliament-building-by-president/ar-AA1bJGRr",
  "image": {
    "_type": "ImageObject",
    "thumbnail": {
      "_type": "ImageObject",
      "contentUrl": "https://www.bing.com/th?id=OVFT._MJPdPJ958_nyj_Ker8qOy&pid=News",
      "width": 1280,
      "height": 720,
      "isLicensed": true
    }
  }
}
登录后复制

可以看到,image对象下只有thumbnail字段,而没有直接的contentUrl字段来指向原始图片。这与开发者期望的包含原始图片contentUrl的结构不符:

期望输出:

{
  "image": {
    "_type": "ImageObject",
    "contentUrl": "https://s.yimg.com/ny/api/res/1.2/6vOM5nkYbwetaWehEa6lGg--/YXBwaWQ9aGlnaGxhbmRlcjt3PTEyMDA7aD02MDA-/https://media.zenfs.com/en/hearst_womens_health_52/9743c154e3be883ec18c41f03fc44d58",
    "thumbnail": {
      "_type": "ImageObject",
      "contentUrl": "https://www.bing.com/th?id=OVFT.1Wypj4IiKxycYuiB2Q81GC&pid=News",
      "width": 700,
      "height": 350
    }
  }
}
登录后复制

3. 官方文档解析与解决方案

根据Bing新闻搜索API v7的官方文档,originalImg参数的使用范围是受限的。文档明确指出:

豆绘AI
豆绘AI

豆绘AI是国内领先的AI绘图与设计平台,支持照片、设计、绘画的一键生成。

豆绘AI 485
查看详情 豆绘AI
"Use this parameter only with the News Search API. Do not specify this parameter when calling the Web Search API. Trending Topics ignores this parameter."(来源:Bing News API v7 Reference - Query Parameters)

这意味着originalImg参数仅适用于/news/search端点,而对于/news(通常用于获取热门新闻或特定类别的新闻,类似“Trending Topics”)端点,该参数会被忽略。因此,在上述问题示例中,由于使用的是/news端点,originalImg=true的设置并未生效,API自然不会返回原始图片URL。

正确的使用方式:

要获取原始图片URL,开发者必须使用/news/search端点,并提供一个查询字符串(q参数)。

示例:使用/news/search端点获取原始图片

const urlCorrect = 'https://bing-news-search1.p.rapidapi.com/news/search?q=latest news in india&originalImg=true&cc=in&safeSearch=Off&textFormat=Raw';
const optionsCorrect = {
    method: 'GET',
    headers: {
        'X-BingApis-SDK': 'true',
        'X-RapidAPI-Key': 'YOUR_RAPIDAPI_KEY', // 请替换为您的实际API Key
        'X-RapidAPI-Host': 'bing-news-search1.p.rapidapi.com'
    }
};

// 使用fetch(urlCorrect, optionsCorrect)发送请求
// ...
登录后复制

通过将端点从/news更改为/news/search,并加入q查询参数,originalImg=true才能发挥作用,从而在API响应中包含原始图片的contentUrl。

4. 注意事项

  • 端点选择: 在开发过程中,务必根据您的需求选择正确的API端点。如果您需要搜索特定关键词的新闻并获取原始图片,请使用/news/search。如果您只是想获取热门或特定类别的新闻(可能不关心原始图片,或其获取方式不同),则可以使用/news。
  • 查询参数q: 使用/news/search端点时,q参数是必需的,用于指定搜索的关键词。
  • API版本: 确保您正在使用的API版本支持originalImg参数(本文基于v7文档)。API行为可能在不同版本间有所差异。
  • API Key与Host: 始终确保您的请求头中包含正确的X-RapidAPI-Key和X-RapidAPI-Host,以进行身份验证。
  • 图片许可: 获取到的图片可能受版权保护。在使用任何图片之前,请务必检查其许可条款,确保您的使用符合法律法规。
  • 错误处理: 建议在代码中加入适当的错误处理机制,以应对API调用失败或返回非预期数据的情况。

5. 总结

originalImg参数在Bing新闻搜索API中是一个非常有用的功能,但其有效性严格依赖于所使用的API端点。为了成功获取新闻的原始图片URL,开发者必须明确该参数仅适用于/news/search端点,并确保在请求中包含必要的查询参数。理解这一关键区别将帮助开发者避免常见陷阱,更高效地利用Bing新闻搜索API来满足其应用需求。

以上就是Bing新闻搜索API中originalImg参数的正确使用指南的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号