你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
IImagesOperations.DetailsWithHttpMessagesAsync 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
通过图像详细信息搜索 API,可以在必应上搜索并获取有关图像(例如包含图像的网页)的见解。 本部分提供有关查询参数和标头的技术详细信息,这些参数和标头用于请求图像的见解以及包含它们的 JSON 响应对象。 有关演示如何发出请求的示例,请参阅 在 Web 上搜索图像。
public System.Threading.Tasks.Task<Microsoft.Rest.HttpOperationResponse<Microsoft.Azure.CognitiveServices.Search.ImageSearch.Models.ImageInsights>> DetailsWithHttpMessagesAsync (string query, string acceptLanguage = default, string contentType = default, string userAgent = default, string clientId = default, string clientIp = default, string location = default, double? cropBottom = default, double? cropLeft = default, double? cropRight = default, double? cropTop = default, string cropType = default, string countryCode = default, string id = default, string imageUrl = default, string insightsToken = default, System.Collections.Generic.IList<string> modules = default, string market = default, string safeSearch = default, string setLang = default, System.Collections.Generic.Dictionary<string,System.Collections.Generic.List<string>> customHeaders = default, System.Threading.CancellationToken cancellationToken = default);
abstract member DetailsWithHttpMessagesAsync : string * string * string * string * string * string * string * Nullable<double> * Nullable<double> * Nullable<double> * Nullable<double> * string * string * string * string * string * System.Collections.Generic.IList<string> * string * string * string * System.Collections.Generic.Dictionary<string, System.Collections.Generic.List<string>> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.Rest.HttpOperationResponse<Microsoft.Azure.CognitiveServices.Search.ImageSearch.Models.ImageInsights>>
Public Function DetailsWithHttpMessagesAsync (query As String, Optional acceptLanguage As String = Nothing, Optional contentType As String = Nothing, Optional userAgent As String = Nothing, Optional clientId As String = Nothing, Optional clientIp As String = Nothing, Optional location As String = Nothing, Optional cropBottom As Nullable(Of Double) = Nothing, Optional cropLeft As Nullable(Of Double) = Nothing, Optional cropRight As Nullable(Of Double) = Nothing, Optional cropTop As Nullable(Of Double) = Nothing, Optional cropType As String = Nothing, Optional countryCode As String = Nothing, Optional id As String = Nothing, Optional imageUrl As String = Nothing, Optional insightsToken As String = Nothing, Optional modules As IList(Of String) = Nothing, Optional market As String = Nothing, Optional safeSearch As String = Nothing, Optional setLang As String = Nothing, Optional customHeaders As Dictionary(Of String, List(Of String)) = Nothing, Optional cancellationToken As CancellationToken = Nothing) As Task(Of HttpOperationResponse(Of ImageInsights))
参数
- query
- String
用户的搜索查询词。 术语不能为空。 术语可能包含 必应高级运算符。 例如,若要将图像限制为特定域,请使用 site: 运算符。 为了帮助提高见解查询的相关性 (请参阅 insightsToken) ,应始终包含用户的查询词。 仅对图像搜索使用此参数 API.Do 调用热门图像 API 时不指定此参数。
- acceptLanguage
- String
用于用户界面字符串的一个或多个语言的逗号分隔列表。 此列表以降序方式显示首选项。 有关其他信息(包括预期格式),请参阅 RFC2616。 此标头和 setLang 查询参数互斥;不要同时指定两者。 如果设置此标头,则还必须指定 cc 查询参数。 为了确定要为其返回结果的市场,必应使用它从列表中找到的第一个受支持语言,并将其与 cc 参数值组合在一起。 如果列表不包括支持的语言,必应会查找最接近的语言和支持请求的市场,或将聚合或默认市场用于结果。 若要确定必应使用的市场,请查看 BingAPIs-Market 标头。 仅当指定多种语言时,才使用此标头和 cc 查询参数。 否则,请使用 mkt 和 setLang 查询参数。 用户界面字符串是用作用户界面中标签的字符串。 JSON 响应对象中有几个用户界面字符串。 响应对象中 Bing.com 属性的任何链接均将应用指定的语言。
- contentType
- String
可选请求标头。 如果将 modules 查询参数设置为 RecognizedEntities,则可以在 POST 请求正文中指定图像的二进制文件。 如果在 POST 请求正文中指定图像,则必须指定此标头并将其值设置为 multipart/form-data。 最大图像大小为 1 MB。
- userAgent
- String
发出请求的用户代理。 必应使用用户代理为移动用户提供优化体验。 尽管是可选的,但还是建议始终指定此标头。 user-agent 应该是任何常用浏览器发送的字符串。 有关用户代理的信息,请参阅 RFC 2616。下面是用户代理字符串的示例。 Windows Phone:Mozilla/5.0 (兼容;MSIE 10.0;Windows Phone 8.0;Trident/6.0;IEMobile/10.0;手臂;触摸;诺基亚;Lumia 822) 。 Android:Mozilla / 5.0 (Linux;美国;Android 2.3.5;en - us;SCH - I500 Build / GINGERBREAD) AppleWebKit / 533.1 (KHTML;如 Gecko) 版本 / 4.0 Mobile Safari / 533.1。 iPhone:Mozilla / 5.0 (iPhone;CPU iPhone OS 6_1,如 Mac OS X) AppleWebKit / 536.26 (KHTML;如 Gecko) Mobile / 10B142 iPhone4;1 BingWeb / 3.03.1428.20120423。 电脑:Mozilla / 5.0 (Windows NT 6.3;WOW64;Trident / 7.0;触摸;rv:11.0) ,如 Gecko。 iPad:Mozilla / 5.0 (iPad;CPU OS 7_0,如 Mac OS X) AppleWebKit / 537.51.1 (KHTML,如 Gecko) Version / 7.0 Mobile / 11A465 Safari / 9537.53
- clientId
- String
必应使用此标头跨必应 API 调用为用户提供一致的行为。 必应通常会发布新功能和改进,并将客户端 ID 用作密钥以在不同航班上分配客流量。 如果未跨多个请求将相同的客户端 ID 用于用户,则必应可能将用户分配给多个冲突的航班。 分配给多个冲突航班可能导致用户体验不一致。 例如,如果第二个请求与第一个请求的航班分配不同,体验可能会出现意外。 此外,必应可以使用客户端 ID 根据客户端 ID 搜索历史记录来定制 Web 结果,为用户提供更丰富的体验。 通过分析由客户端 ID 生成的活动,必应还会使用此标头来提高结果排名。 相关改进有助于提高必应 API 交付的结果质量,从而提高 API 客户的点击率。 重要提示:尽管是可选的,但应将此标头视为必选。 对于同一最终用户和设备组合,如果跨多个请求保留客户端 ID,则 1) API 客户可以获取一致的用户体验;2) 可通过必应 API 提高结果质量,从而提高点击率。 在设备上使用你的应用程序的每个用户必须具有必应生成的唯一客户端 ID。 如果未在请求中包含此标头,必应会生成 ID,然后在 X-MSEdge-ClientID 响应标头中将其返回。 仅当用户首次在设备上使用应用时,才不可以在请求中包含此标头。 针对应用为设备上的此用户生成的每个必应 API 请求,使用客户端 ID。 保留客户端 ID。 若要在浏览器应用中保留 ID,请使用持久性 HTTP Cookie 来确保所有会话均使用此 ID。 请勿使用会话 Cookie。 对于移动应用等其他应用,请使用设备的持久存储来保留 ID。 下次用户在该设备上使用你的应用时,会获取保留的客户端 ID。 必应响应不一定包含此标头。 如果响应包含此标头,请针对该设备上的用户捕获客户端 ID 并将其用于所有后续必应请求。 如果包含 X-MSEdge-ClientID,不可在请求中包含 Cookie。
- clientIp
- String
客户端设备的 IPv4 或 IPv6 地址。 IP 地址用于发现用户的位置。 必应使用位置信息来确定安全搜索行为。 尽管是可选的,但还是建议始终指定此标头和 X-Search-Location 标头。 不要混淆地址(例如,通过将最后一个八位字节更改为 0 来混淆地址)。 混淆地址会导致位置未处于设备实际位置附近,这可能导致必应提供错误的结果。
- location
- String
以分号分隔的键/值对列表,描述客户端的地理位置。 必应使用位置信息来确定安全搜索行为并返回相关的本地内容。 以 <键>:<值> 形式指定键/值对。 下面是用于指定用户位置的键。 lat (所需的) :客户端位置的纬度(以度为单位)。 纬度必须大于或等于 -90.0 且小于或等于 +90.0。 负值表示南纬,正值表示北纬。 long (必需) :客户端位置的经度(以度为单位)。 经度必须大于或等于 -180.0 且小于或等于 +180.0。 负值表示西经,正值表示东经。 re (所需的) :半径(以米为单位),指定坐标的水平精度。 传递设备定位服务返回的值。 典型的值可能是:22m - GPS/Wi-Fi、380m - 蜂窝基站三角网定位、18,000m - 反向 IP 查询。 ts (可选) :客户端位于该位置时的 UTC UNIX 时间戳。 (UNIX 时间戳是自 1970 年 1 月 1 日以来的秒数。) 头 (可选) :客户端的相对航向或行驶方向。 以度数指定旅行方向(从 0 到 360),相对于正北方向顺时针计数。 仅当 sp 键为非零时,才指定此键。 sp (可选) :客户端设备正在行驶的水平速度 (速度) (以米/秒为单位)。 alt (可选) :客户端设备的高度(以米为单位)。 (可选) :半径(以米为单位),指定坐标的垂直精度。 仅当指定 alt 键时,才指定此键。 尽管许多键是可选的,但提供的信息越多,位置结果越精确。 尽管是可选的,但还是建议始终指定用户的地理位置。 如果客户端的 IP 地址未准确反映用户的物理位置(例如,如果客户端使用 VPN),则提供位置尤其重要。 为了获得最佳结果,应包含此标头和 X-MSEdge-ClientIP 标头,但应至少包含此标头。
要裁剪的区域的底部坐标。 坐标是原始图像高度的小数部分值,是从图像的左上角测量的。 将坐标指定为介于 0.0 到 1.0 的值。 此参数仅用于 Insights API。 调用图像、热门图像或 Web 搜索 API 时,请勿指定此参数。
要裁剪的区域的左坐标。 坐标是原始图像高度的小数,是从图像的左上角测量的。 将坐标指定为介于 0.0 到 1.0 的值。 仅将此参数与 Insights API 一起使用。 调用图像、热门图像或 Web 搜索 API 时,请勿指定此参数。
要裁剪的区域的右坐标。 坐标是原始图像高度的小数,是从图像的左上角测量的。 将坐标指定为介于 0.0 到 1.0 的值。 仅将此参数与 Insights API 一起使用。 调用图像、热门图像或 Web 搜索 API 时,请勿指定此参数。
要裁剪的区域的顶部坐标。 坐标是原始图像高度的小数,是从图像的左上角测量的。 将坐标指定为介于 0.0 到 1.0 的值。 仅将此参数与 Insights API 一起使用。 调用图像、热门图像或 Web 搜索 API 时,请勿指定此参数。
- cropType
- String
根据 cal、cat、car 和 cab 参数中指定的坐标裁剪图像时要使用的裁剪类型。 下面是可能的值。 0:矩形 (默认) 。 仅将此参数与 Insights API 一起使用。 调用图像、热门图像或 Web 搜索 API 时,请勿指定此参数。 可能的值包括:“矩形”
- countryCode
- String
结果来源的国家/地区的 2 个字符国家/地区代码。 有关可能值的列表,请参阅 市场代码。 如果设置此参数,则还必须指定 Accept-language 标头。 必应使用从语言列表中找到的第一种受支持语言,并将该语言与指定的国家/地区代码组合在一起,以确定返回结果的市场。 如果语言列表不包含支持的语言,必应会查找支持请求的最近语言和市场,或者可能会对结果使用聚合市场或默认市场,而不是指定的市场。 仅当指定多种语言时,才应使用此查询参数和Accept-Language查询参数;否则,应使用 mkt 和 setLang 查询参数。 此参数和 mkt 查询参数相互排斥,不可同时指定两者。
- imageUrl
- String
要获取见解的图像的 URL。 使用此参数作为使用 insightsToken 参数指定映像的替代方法。 还可以通过将图像的二进制文件放在 POST 请求的正文中来指定图像。 如果使用二进制选项,请参阅 Content-Type 标头。 受支持的最大图像大小为 1 MB。 仅将此参数与 Insights API 一起使用。 调用图像、热门图像或 Web 搜索 API 时,请勿指定此参数。
- insightsToken
- String
映像令牌。 Image 对象的 imageInsightsToken 包含令牌。 指定此参数可获取有关图像的其他信息,例如描述文字或购物源。 有关可以获取的图像的其他信息的列表,请参阅 modules 查询参数。 仅将此参数与 Insights API 一起使用。 调用图像、热门图像或 Web 搜索 API 时,请勿指定此参数。
要请求的以逗号分隔的见解列表。 下面是可能的不区分大小写的值。 全部:返回除 RecognizedEntities 以外的所有见解(如果可用)。 BRQ:最佳代表性查询。 最能描述图像的查询术语。 标题:提供有关图像信息的描述文字。 如果描述文字包含实体,则响应可能包含这些实体的图像的链接。 集合:相关图像的列表。 食谱:用于烹饪图像中显示的食物的食谱列表。 PagesIncluding:包含图像的网页列表。 RecognizedEntities:在图像中识别 (人员) 的实体列表。 注意:不能将此模块与任何其他模块一起指定。 如果使用其他模块指定它,则响应不包括已识别的实体。 RelatedSearches:其他人进行的相关搜索的列表。 ShoppingSources:可在其中购买相关产品/服务的商家列表。 SimilarImages:在视觉上与原始图像相似的图像列表。 SimilarProducts:包含与原始图像中找到的产品类似的产品的图像列表。 标记:提供图像中找到的内容类型的特征。 例如,如果图像是一个人,则标记可能指示该人的性别和他们所穿的衣服类型。 如果指定了模块,但没有模块的数据,则响应对象不包括相关字段。 例如,如果指定 Caption 且该标题不存在,则响应不包括 imageCaption 字段。 若要包含相关搜索,请求必须包含原始查询字符串。 虽然类似的图像或产品不需要原始查询字符串,但应始终包含它,因为它有助于提高相关性和结果。 仅将此参数与 Insights API 一起使用。 调用图像、热门图像或 Web 搜索 API 时,请勿指定此参数。
- market
- String
产生结果的市场。 通常,mkt 是用户发出请求的国家/地区。 但是,如果用户不位于必应提供结果的国家/地区,则可能是不同的国家/地区。 市场必须采用语言代码>-国家/<地区代码>的形式<。 例如,en-US。 字符串不区分大小写。 有关可能的市场值的列表,请参阅 市场代码。 注意:如果已知,建议始终指定市场。 指定市场有助于必应路由请求,并返回适当的最佳响应。 如果指定的市场未在 市场代码中列出,必应会根据可能会更改的内部映射使用最适合的市场代码。 此参数和 cc 查询参数相互排斥,不可同时指定两者。
- safeSearch
- String
筛选成人内容的图像。 下面是可能的筛选器值。 关闭:可能返回包含成人内容的图像。 如果请求通过图像搜索 API,则响应包括清晰 (非模糊) 的缩略图。 但是,如果请求通过 Web 搜索 API,则响应包括 (模糊) 像素化的缩略图图像。 中等:如果请求通过图像搜索 API,则响应不包括包含成人内容的图像。 如果请求通过 Web 搜索 API,则响应可能包含包含成人内容的图像, (缩略图图像 (模糊) ) 进行像素化。 严格:不返回包含成人内容的图像。 默认级别为“中等”。 如果请求来自必应成人策略要求将 safeSearch 设置为 Strict 的市场,必应将忽略 safeSearch 值并使用 Strict。 如果使用 site: query 运算符,则无论 safeSearch 查询参数设置为什么,响应都可能包含成人内容。 使用网站:仅当你知道网站上的内容并且你的方案支持成人内容的可能性时。 可能的值包括:“Off”、“Moderate”、“Strict”
- setLang
- String
可用于用户界面字符串的语言。 使用 ISO 639-1 2 字母语言代码指定语言。 例如,英语的语言代码是 EN。 默认为 EN(英语)。 尽管是可选项,但应始终指定语言。 通常,将 setLang 设置为 mkt 指定的相同语言,除非用户希望用户界面字符串以其他语言显示。 此参数和 Accept-Language 标头互斥;不要同时指定这两者。 用户界面字符串是用作用户界面中标签的字符串。 JSON 响应对象中有几个用户界面字符串。 此外,响应对象中 Bing.com 属性的任何链接均会应用指定的语言。
- customHeaders
- Dictionary<String,List<String>>
将添加到请求的标头。
- cancellationToken
- CancellationToken
取消标记。
返回
例外
当操作返回无效状态代码时引发
无法反序列化响应时引发
当所需参数为 null 时引发