1.0.0 • Published 5 years ago

collect-data-jssdk v1.0.0

Weekly downloads
2
License
MIT
Repository
-
Last release
5 years ago

cosdk

数据采集Javascript SDK

安装和引入方式

在你的项目的 html 文件中引入

<script src="https://dp-sdk.bdfint.com/dpsdk.min.js"></script>

在你的head标签内加入

  <script>
        var dpsdk = dpsdk || [];
  </script>

quick start

dpsdk.push('init', {
  platform_code: '平台代码'
});

dpsdk.push('auto_track');

方法列表

name说明函数形式返回值
push推入执行某动作function (action, options) { ... }

push方法参数说明:

arguments说明类型默认值required
0action要执行的动作,详见下方push方法第一个参数说明stringtrue
1options参数objectfalse

push方法第一个参数说明

可选值动作说明push方法options参数需要传递
'init'初始化{server_url: '接收数据的地址', platform_code: '平台代码(required)'}
'auto_track'开启默认统计
'track'手动统计{event_type: '可选参数见下方事件名列表', event_properties: { ...业务类参数 }}
'set_distinct_id'设置distinct_id(一般不使用)'需要自定义的distinct_id'

事件名列表(options参数event_type字段可选值)

value说明当event为该值时,track方法params参数的event_properties字段需要传递的属性
'view_page'访问页面
'search_commodity'搜索商品key_word: '搜索关键字'
'click_ad'点击广告位ad_position: '广告位置', ad_link: '广告链接'
'click_news'点击资讯news_title: '资讯标题', news_link: '资讯链接', news_column: '资讯栏目'

example:

    var searchBtn = document.querySelector('#searchBtn');

    // 初始化
    dpsdk.push('init', {
        platform_code: "trade",   // 必填
        // server_url: 'api/v2/collect'  // 可选,如果需要修改接收数据的地址
    });

    // 开启默认的数据搜集(page_view)
    dpsdk.push('auto_track');


    /**
     * 根据业务场景手动调用数据采集
     * 以下为目前要采集数据的4种业务场景示例
     */

    // 场景1:搜索商品
    btn.addEventListener('click', function () {
        dpsdk.push('track', {
            event_type: 'search_commodity',
            event_properties: {
              key_word: '轧钢',
            }
        });
    });

    // 场景2:点击广告位
    btn.addEventListener('click', function () {
        dpsdk.push('track', {
            event_type: 'click_ad',
            event_properties: {
              "ad_position": "header",   // 广告位置
              "ad_link": "http://ad.com/123"   // 链接
            }
        });
    });

    // 场景3:点击资讯
    btn.addEventListener('click', function () {
        dpsdk.push('track', {
            event_type: 'click_news',
            event_properties: {
              "news_id": "sdfsd"    // 资讯id
            }
        });
    });

    // 场景4:浏览页面
    btn.addEventListener('click', function () {
        dpsdk.push('track', {
            event_type: 'view_page',
            event_properties: {}
        });
    });

SPA项目的page_view统计(以react为例)

在全局的(一般为App.js)componentDidUpdate内调用统计api

componentDidUpdate () {
    dpsdk.push('track', {
      event_type: 'view_page',
      event_properties: {
        ...
      }
    });
  }