API的对话:检索并提交消费者生成的内容(CGC),检索您的产品目录和关于CGC的统计信息。
显示原理
对话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端点。单击端点查看示例、选项和错误代码:
内容类型 | 显示终端 |
---|---|
审查 | |
评论发表评论 | |
问题 | |
回答 | |
作者 | |
产品 | |
类别 | |
统计数据 |
过滤
属性可以基于各种属性筛选显示请求过滤器
参数。过滤的一般模式如下所示:
过滤器=属性:接线员:价值
一个请求可以通过使用多个过滤参数对多个属性进行过滤:
过滤器= 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
- 类别名称
- 类别层次结构名称
- 标题
- 文本
- 照片说明
- 视频标题
- 标签(例如,优点,缺点)
- 上下文数据值(例如,年龄、性别)
- 附加字段
分页
分页是将总结果集划分为更小的子集以便在用户界面中显示的过程。
Bazaarvoice平台每次使用对话API发出请求时都会计算一个总结果集。方法对总结果集进行分页限制
和抵消
参数。限制
控制响应请求时将返回的结果的计数,最多为100。抵消
标识在总结果中开始返回结果的位置。通过组合这两个参数,可以遍历整个结果集。
以下组合限制
和抵消
将返回10个评论,从第10个评论开始,代表结果的第二页:
限制= 10抵消= 10
限制
和抵消
仅用于有机流量(用户手动单击链接)。任何其他使用都会导致性能下降,并可能导致对API使用的限制或限制。请参阅分页教程获取更多深入的文档。
包括相关内容
对话API可以返回与请求的主要内容类型相关的其他内容类型数据。例如,你可以提出问题并附上相关的答案。可以使用包括
参数:
包括= Answers&Filter = ProductId: 1000001
通过用逗号分隔,可以包含多个内容类型:
包括= ContentType1,ContentType2,ContentTypeN
包含的内容将在与主内容分离的对象中返回。每一项主要内容都将包含一个包含内容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
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吗?统计=评论,问题
使用统计数据。Json,当你想一次包含大量产品的整体评级时。必威手机版本例如,在类别页面或搜索结果页面上。的
统计数据
参数用于显示产品页面上的详细统计信息。本地化
Bazaarvoice平台支持多个地区,这些地区使用language_COUNTRY
格式。例如,区域代码fr_CA
认定加拿大使用法语。
Bazaarvoice有很多标签
控件可以控制显示请求返回的字段标签所使用的语言语言环境
参数。在以下示例中,标签将以加拿大法语返回:
语言环境= fr_CA
过滤用户提交的内容
用户提交的内容(评论、问题等)可以使用ContentLocale
过滤器。在下面的例子中,只返回与fr_CA相关的内容:
过滤器= ContentLocale: fr_CA
字符编码
Bazaarvoice平台返回UTF-8编码的内容。
请参阅国际化的教程获取更多深入的文档。
包括评审和评论。