PageDataService¶
页面数据服务负责收集有关页面的其他数据。这可能包括有关页面上的媒体、产品信息等信息。启用后,它将自动尝试查找用户浏览页面的页面数据,或者可以将其定向到异步查找 URL 的页面数据。
PageDataService
是一个 EventEmitter,监听器可以通过 on
和 once
方法订阅其通知。
可以通过将 browser.pagedata.enabled
设置为 true 来启用该服务。可以通过将 browser.pagedata.log
设置为 true 来启用其他日志记录。
PageData 数据结构¶
在高级别上,页面数据服务可以收集许多不同类型的数据。当查询时,服务将使用 PageData
结构进行响应,该结构保存有关页面的某些常规信息、发现数据的时间以及找到的不同数据类型的映射。如果未找到任何特定数据,则此映射将为空。映射的键来自 PageDataSchema.DATA_TYPE
枚举。该值为 JSON 数据,其结构因数据类型而异。
{
"url": <url of the page as a string>,
"date": <epoch based timestamp>,
"siteName": <a friendly name for the website>,
"image": <url for an image for the page as a string>,
"data": <map of data types>,
}
PageData 收集¶
页面数据以两种方式之一收集。
自动为用户访问的网页收集页面数据。此收集在短暂延迟后触发,并在必要时更新。任何数据都会在内存中缓存一段时间。找到页面数据后,会发出 page-data
事件。事件的参数包含 PageData
结构。 getCached
函数可用于访问 URL 的任何缓存数据。
支持的页面数据类型¶
当前支持以下页面数据类型 (PageDataSchema.DATA_TYPE
)
产品
文档
文章
音频
视频