我刚刚开始使用Sitecore 9.1 JSS。从外部站点,我对Sitecore项进行RESTful API调用,例如
http://site/sitecore/api/layout/render/jss?item=/&sc_apikey={KEY}
我创建了一个活动,并使用参数调用了上面的代码:
https:/site/?sc_camp=<campaignid>&sc_lang=en
当我在体验分析控制面板中查看活动时,未显示任何活动。(我重新编制了索引)
我读了这篇文章:https://jss.sitecore.com/docs/fundamentals/services/tracking,还添加了补丁文件,如下所述:
<configuration>
<sitecore>
<settings>
<setting name="Sitecore.JSS.TrackerServiceEnabled" value="true" />
</settings>
</sitecore>
</configuration>
我遗漏了什么?如何使用Sitecore 9.1 JSS触发活动(甚至是目标)?
发布于 2019-03-05 21:26:03
我从this blog by Gary Wenneker那里得到了答案
部署营销定义
在我们能够触发事件之前,我们必须部署营销定义。可从控制面板(仪表板->控制面板)执行此操作。单击Deploy marketing definitions链接。这将打开一个包含所有营销定义的窗口。将它们全部选中,然后单击Deploy。这可能需要大约15分钟才能运行,所以不要认为您的系统没有响应,请不要不耐烦:-)
Sitecore JSS跟踪API
跟踪API可以通过向Sitecore Layout Service发出请求来跟踪几件事。它接受特定类型的数组(及其属性)
const trackingApiOptions ={主机: config.sitecoreApiHost,querystringParams:{ sc_apikey: config.sitecoreApiKey,},fetcher: dataFetcher };const track = ( event : string) => { return function (dispatch: any,getState: any) { trackingApi //注意事件是数组-支持批处理.trackEvent({ eventId: event },trackingApiOptions) .then(() => { dispatch(artistSearchedClickedRequest);}) .catch((error: any) => console.error(error));}}
跟踪API选项对象将提供主机、Sitecore API密钥(通过查询字符串)和数据获取器。这个数据抓取器将是Axios的一个简单实现,但您可以随意使用您想要的任何实现:
从axios导入axios;导出函数dataFetcher(url,data) { return axios({ url,method: data?‘'POST’:'GET',data,withCredentials: true,});}
https://stackoverflow.com/questions/54987744
复制相似问题