对话API允许您以编程方式检索和提交Bazaarvoice对话数据以在应用程序中使用。要了解更多信息,请参阅对话API文档主页

内容

+显示 ——隐藏

本教程解释了对话API显示请求的基本原理。

概述

当使用Bazaarvoice Conversations API时,“显示请求”是一个返回用于在应用程序中显示的消费者生成内容(CGC)的请求。显示请求是通过执行一个HTTP GET请求来完成的,该请求包含一个内容类型API版本,而你的API万能钥匙

得到https://stg.api.bazaarvoice.com/data/ [ContentType] . json ? ApiVersion = [LatestApiVersion]万能钥匙= [YourApiKey]

此外,对话API支持以下显示功能:

  • 过滤
  • 排序
  • 免费文本搜索
  • 分页
  • 包括相关内容
  • 跨域请求
  • 实时统计
  • 本地化

继续阅读以了解这些特性,并查看如何使用它们的示例。

内容类型

Bazaarvoice平台的所有显示请求都是特定的内容类型。

得到https://stg.api.bazaarvoice.com/data/评论. json

评论是最常见的内容类型,但也有其他类型。下表显示了每种内容类型的API端点。单击端点查看示例、选项和错误代码:

内容类型 显示终端
审查

reviews.json

评论发表评论

reviewcomments.json

问题

questions.json

回答

answers.json

作者

authors.json

产品

必威手机版本products.json

类别

categories.json

统计数据

statistics.json

过滤

属性可以基于各种属性筛选显示请求过滤器参数。过滤的一般模式如下所示:

过滤器=属性:接线员:价值

一个请求可以通过使用多个过滤参数对多个属性进行过滤:

过滤器= Attribute1:接线员:Value&Filter = Attribute2:接线员:价值

针对多个值,使用逗号分隔的值列表:

过滤器=属性:接线员:Value1, Value2,家

可用的筛选器属性因内容类型而异。请参阅参考文档以查看可用筛选器属性的列表。

下表标识了过滤操作符:

操作符 描述 例子
情商

等于

过滤器= HasComments:情商:真的
neq

不等于

过滤器=评级:neq: 3
gt

大于

过滤器=评级:gt: 3
lt

不到

过滤器=评级:lt: 3
一种

大于或等于

过滤器= TotalFeedbackCount: gte: = 7
lte

小于或等于

过滤器= SubmissionTime: lte: 1468611009
'等于'简写
任何没有运算符的过滤器都将被视为情商被使用过。因此,过滤器=属性:价值和使用是一样的吗过滤器=属性:情商:价值

排序

控件可以根据各种属性对显示请求的响应进行排序排序参数。排序的一般模式如下所示:

=属性:方向

多属性排序也可以通过使用逗号分隔的排序属性列表来支持:

= Attribute1:方向Attribute2:方向

可用的排序属性取决于内容类型。请参阅参考文档以查看可用排序属性的列表。

方向是asc对于升序结果或desc降序结果。下表显示了排序顺序如何处理几个不同的属性类别。

订单 描述 例子

时间

asc

从旧到新

= SubmissionTime: asc
desc

从最新到最古老

= SubmissionTime: desc

整数

asc

从最低到最高

=评级:asc
desc

从最高到最低

=评级:desc

布尔

asc

从假到真

= HasComments: asc
desc

从真到假

= HasComments: desc

字母顺序排列

asc

从头到尾

= UserLocation: asc
desc

从Z到A

= UserLocation: desc

全文检索

控件可以搜索所有用户生成的内容搜索参数。结果将根据与查询的相关性进行排名。最相关的结果将在顶部,不太相关的结果将在底部。由于查询处理的算法性质,您不应该期望能够预测结果的准确顺序。

搜索支持特定于区域的词干,这意味着搜索也会返回,虽然结果与反应可能比结果低

搜索=猫

类似地,带引号的搜索文本将返回结果与结果顶部的精确匹配。

搜索= "肥皂"

全文搜索不支持通配符。

下面的列表描述了搜索每种内容类型的默认字段:

  • 外部ID
  • 产品名称
  • 产品品牌
  • 产品描述
  • 类别名称
  • 类别层次结构名称
  • 外部ID
  • 类别名称
  • 类别层次结构名称
搜索问题也会搜索相关的答案。
  • 标题
  • 文本
  • 照片说明
  • 视频标题
  • 答案文本(问题答案文本)
  • 回答图片说明(文字来自回答问题的照片)
  • 回答视频说明(答案视频中的文字)
  • 产品外部ID
  • 产品名称
  • 产品品牌
  • 外部ID
  • 类别名称
  • 类别层次结构名称
  • 标签(例如,优点,缺点)PRR
  • 上下文数据值(例如,年龄、性别)PRR
  • 附加字段PRR
  • 标题
  • 文本
  • 照片说明
  • 视频标题
  • 标签(例如,优点,缺点)
  • 上下文数据值(例如,年龄、性别)
  • 附加字段
  • 文本
  • 照片说明
  • 视频标题
  • 标签(例如,优点,缺点)PRR
  • 上下文数据值(例如,年龄、性别)PRR
  • 附加字段PRR

包括评审和评论。

  • 标题
  • 文本
  • 照片说明PRR
  • 视频标题PRR

分页

分页是将总结果集划分为更小的子集以便在用户界面中显示的过程。

Bazaarvoice平台每次使用对话API发出请求时都会计算一个总结果集。方法对总结果集进行分页限制抵消参数。限制控制响应请求时将返回的结果的计数,最多为100。抵消标识在总结果中开始返回结果的位置。通过组合这两个参数,可以遍历整个结果集。

以下组合限制抵消将返回10个评论,从第10个评论开始,代表结果的第二页:

限制= 10抵消= 10
限制抵消仅用于有机流量(用户手动单击链接)。任何其他使用都会导致性能下降,并可能导致对API使用的限制或限制。

请参阅分页教程获取更多深入的文档。

包括相关内容

对话API可以返回与请求的主要内容类型相关的其他内容类型数据。例如,你可以提出问题并附上相关的答案。可以使用包括参数:

包括= Answers&Filter = ProductId: 1000001

通过用逗号分隔,可以包含多个内容类型:

包括= ContentType1ContentType2ContentTypeN

包含的内容将在与主内容分离的对象中返回。每一项主要内容都将包含一个包含内容id的列表,允许您将它们关联在一起:

{“HasErrors”:假的,“包括”:{"答案":{" 16389 ":{…}, "16390":{…}, "16391":{…}},…},……“结果”:[{“QuestionSummary”:“测试问题…”,“Id”:“14898”,“AnswerIds”:[“16391”、“16390”、“16389”),…}],…}

要成功地使用includes,您必须理解所包含的内容是根据特定请求实际返回的主要内容计算的。在上面的例子中,返回答案16389、16390和16391,因为它们与问题14898相关联。如果问题14898没有在回复中,那么这些答案也不会出现。

可能包含的内容类型因所请求的主要内容类型而异。请参阅参考文档以查看可用选项的列表。

您可以对包含的内容执行以下操作:

要对包含的内容应用筛选器,请使用Filter_ {ContentType}参数,更换{ContentType}包含的内容类型。

在下面的例子中,只会返回有特色的注释:

reviews.json吗?包括=Comments&Filter_Comments = IsFeatured:情商:真的

要对包含的内容应用排序,请使用Sort_ {ContentType}参数,更换{ContentType}包含的内容类型。

在下面的例子中,最新的注释将首先返回:

reviews.json吗?包括=Comments&Sort_Comments = SubmissionTime: desc

属性可以指定包含内容的计数,最多为20Limit_ {ContentType}参数,更换{ContentType}包含的内容类型。

在下面的例子中,将返回10条注释:

reviews.json吗?包括=Comments&Limit_Comments = 10
对话API不支持对包含的内容进行分页。没有Offset_ {ContentType}参数,并试图使用一个将无声地失败,因为对话API不识别它。

方法可以搜索包含的数据Search_ {ContentType}参数,更换{ContentType}包含的内容类型。

在以下示例中,只有评论中包含“烘干机”字样的产品才会被返回:必威手机版本

必威手机版本products.json吗?包括=Reviews&Search_Reviews =干燥机

搜索Search_(类型)参数可以同时用于单个请求以缩小结果范围。例如,要搜索包含“烘干机”和“最佳”的评论,请使用以下语法:reviews.json吗?包括=Comments&搜索=干燥机Search_Comments =最好的

跨域请求

对话API支持使用CORS(跨源资源共享)和JavaScript对象填充符号(JSONP)的请求。

歌珥

要使用CORS,请确保您的要求符合“简单”CORS的要求,包括:

  • 使用HTTP GET或POST方法
  • 不使用自定义、禁止或不安全的头文件

请参阅歌珥教程通过对话API了解更多关于使用CORS的信息。

JSONP

要执行返回JSONP的显示请求,请添加回调参数,其值是JSON处理函数的名称。生成的JSON响应将被“包装”在该函数中。

  • 没有回调函数:{"结果":{“产品”:{必威手机版本" AAA ": {" id ":“AAA”}}}}
  • 使用回调函数myCallbackFunc:myCallbackFunc({“结果”:{"产品":{"必威手机版本 AAA ": {" id ":“AAA”}}}});

下面的示例演示回调参数:

回调= myCallbackFunc

请参阅JSONP教程以了解更多关于通过对话API使用JSONP的信息。

实时统计

任何要求必威手机版本products.json或任何要求,包括必威手机版本可以使用统计数据参数将产品的统计信息添加到响应中。如果在请求中包含除产品ID之外的更多过滤器,并且希望将统计信息限制为过滤后的结果,请使用FilteredStats而不是统计数据

必威手机版本products.json

必威手机版本products.json吗?统计数据={ContentType}

包括=产品必威手机版本

reviews.json吗?ApiVersion = [LatestApiVersion]万能钥匙= [YourApiKey]过滤器= ProductId: test1包括=产品必威手机版本统计= {ContentType}

可以对以下内容类型进行统计:

内容类型 API响应中的名称

评论

ReviewStatistics

问题

QAStatistics

答案

QAStatistics

你可以用逗号分隔多个内容类型:

必威手机版本products.json吗?统计=评论问题
与statistics.json不同
使用统计数据。Json,当你想一次包含大量产品的整体评级时。必威手机版本例如,在类别页面或搜索结果页面上。的统计数据参数用于显示产品页面上的详细统计信息。

本地化

Bazaarvoice平台支持多个地区,这些地区使用language_COUNTRY格式。例如,区域代码fr_CA认定加拿大使用法语。

Bazaarvoice有很多标签

控件可以控制显示请求返回的字段标签所使用的语言语言环境参数。在以下示例中,标签将以加拿大法语返回:

语言环境= fr_CA

过滤用户提交的内容

用户提交的内容(评论、问题等)可以使用ContentLocale过滤器。在下面的例子中,只返回与fr_CA相关的内容:

过滤器= ContentLocale: fr_CA

字符编码

Bazaarvoice平台返回UTF-8编码的内容。

请参阅国际化的教程获取更多深入的文档。

下一个