
本文深入探讨了Bing新闻搜索API中originalImg参数的正确使用方法。许多开发者在使用/news端点时,发现设置originalImg=true无法获取原始尺寸图片URL,仅返回缩略图。核心问题在于,该参数仅适用于/news/search端点。文章将通过示例代码和官方文档解析,指导开发者如何避免此常见错误,确保正确获取所需图片信息。
Bing新闻搜索API中originalImg参数的常见误解
在使用bing新闻搜索api时,开发者常常希望获取新闻文章的原始尺寸图片url,而不仅仅是缩略图。为此,api提供了一个名为originalimg的查询参数,直观上理解为设置为true即可获取原始图片。然而,许多开发者在使用/news端点(通常用于获取新闻类别或热门新闻)时,即使设置了originalimg=true,也只能在响应中找到缩略图信息,而没有原始尺寸图片的contenturl字段。
以下是一个典型的示例代码片段,展示了这种常见的使用方式:
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密钥 'X-RapidAPI-Host': 'bing-news-search1.p.rapidapi.com' }};// ... 执行API请求 ...
当使用上述代码请求/news端点时,期望的输出可能包含一个指向原始图片的高清contentUrl,例如:
{ "url": "https://www.msn.com/en-in/news/...", "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", // 期望的原始图片URL "thumbnail": { "_type": "ImageObject", "contentUrl": "https://www.bing.com/th?id=OVFT.1Wypj4IiKxycYuiB2Q81GC&pid=News", "width": 700, "height": 350 } }}
然而,实际收到的响应却往往只包含缩略图信息,而缺少原始图片的contentUrl字段:
{ "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 } }}
这种差异导致开发者困惑,认为originalImg参数并未生效。
参数originalImg的正确使用场景
根据Bing新闻搜索API v7的官方文档,originalImg参数并非适用于所有新闻相关的API端点。其核心限制在于:
originalImg参数仅与/news/search端点结合使用。
这意味着,当您调用/news(获取一般新闻或分类新闻)或Trending Topics(获取热门话题)等端点时,即使在请求中包含了originalImg=true,该参数也会被忽略,API响应中将不会提供原始尺寸的图片URL。
官方文档说明:“仅将此参数与新闻搜索API一起使用。调用Web搜索API时,请勿指定此参数。热门话题会忽略此参数。”(原文链接:https://www.php.cn/link/c94ac72ea12ea1943136f2bc64719600)
因此,如果您的目标是获取新闻的原始图片,您必须使用/news/search端点来执行新闻搜索,并在请求中包含originalImg=true。
示例与解析
让我们回顾之前的代码示例,并理解其为何未能获取原始图片:
// 错误用法示例:使用/news端点,但期望originalImg生效const url = 'https://bing-news-search1.p.rapidapi.com/news?&originalImg=true&category=india&cc=in&safeSearch=Off&textFormat=Raw';// ...
此处的关键在于URL路径中的/news。由于originalImg参数不适用于/news端点,即使将其设置为true,API也会忽略此设置,并仅返回默认的缩略图信息。要正确获取原始图片,您需要将端点更改为/news/search,并可能需要添加一个q(查询词)参数来执行具体的搜索。
正确的端点使用逻辑(概念性示例,具体参数需根据需求调整):
// 正确用法示例:使用/news/search端点以激活originalImg// 注意:/news/search通常需要一个查询词(q)const searchUrl = 'https://bing-news-search1.p.rapidapi.com/news/search?q=example+query&originalImg=true&cc=in&safeSearch=Off&textFormat=Raw';const searchOptions = { method: 'GET', headers: { 'X-BingApis-SDK': 'true', 'X-RapidAPI-Key': 'YOUR_RAPIDAPI_KEY', // 请替换为你的实际API密钥 'X-RapidAPI-Host': 'bing-news-search1.p.rapidapi.com' }};// ... 执行API请求 ...
当使用/news/search端点并设置originalImg=true时,API将尝试在响应中包含原始尺寸图片的contentUrl字段(如果可用)。
注意事项与最佳实践
查阅官方文档: 在使用任何API时,始终优先查阅其官方文档。这是理解参数功能、端点限制和预期行为最准确的来源。理解端点差异: Bing新闻搜索API提供了多个端点,如/news、/news/search和/news/trending,它们各自有不同的用途和支持的参数。深入理解这些差异是高效利用API的关键。测试与验证: 在开发过程中,通过小范围的测试来验证API行为与文档描述是否一致,可以有效避免此类问题。错误处理: 即使使用了正确的参数和端点,也并非所有新闻条目都会提供原始尺寸图片。您的应用程序应能优雅地处理只返回缩略图的情况。
总结
originalImg参数在Bing新闻搜索API中是一个非常有用的功能,但其作用范围仅限于/news/search端点。开发者在使用此参数时,务必确保调用了正确的API端点,以避免因误解文档而导致的意外行为。通过仔细阅读官方文档、理解不同端点的功能以及进行充分的测试,可以确保您的应用程序能够正确地获取所需的新闻图片信息。
以上就是Bing新闻搜索API中originalImg参数的正确用法解析的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1523627.html
微信扫一扫
支付宝扫一扫