使用分段分析 javascript 库时,我必须如何或做什么才能将所有分析数据发送到我自己的服务器?
问问题
1588 次
2 回答
2
我想到了两个可能的选择。
您可以“按原样”利用 Segment 并通过 webhook 集成将数据推送到您的服务器:https ://segment.com/docs/integrations/webhooks/
由于 Segment 的 Javascript 库是开源的,您可以在您的网站上手动部署它。这将涉及对应用程序将数据发送到的端点进行一些更改:https ://github.com/segmentio/analytics.js
于 2016-06-17T16:44:53.337 回答
1
这是我的解决方案。只需用您的服务器更改 //api.segment.io/v1。下面的代码属于https://github.com/segmentio/analytics.js/blob/2.11.0/analytics.js
/**
* Expose `Segment` integration.
*/
var Segment = exports = module.exports = integration('Segment.io')
.option('apiKey', '');
Segment.prototype.send = function(path, msg, fn) {
var url = scheme() + '//api.segment.io/v1' + path;
var headers = { 'Content-Type': 'text/plain' };
fn = fn || noop;
var self = this;
// msg
msg = this.normalize(msg);
// send
send(url, msg, headers, function(err, res) {
self.debug('sent %O, received %O', msg, arguments);
if (err) return fn(err);
res.url = url;
fn(null, res);
});
};
如果您想更改 Segment.io 的名称,请使用 Segment.io.Btw 初始化分析,替换集成名称('Segment.io')。
analytics.initialize({
'Segment.io': {
apiKey: ''
}
});
于 2018-06-21T08:27:13.480 回答