我们希望像在Google Analytics(分析)中一样在FB Pixel中推送数据。
通过此链接https://www.facebook.com/tr?id=&ev=test_event,我可以将数据推送到Pixel中,但它只是事件,对于链接此事件和客户端,需要client_id(如果我没记错的话,它称为fbp)。
我们总体上想做的事情:
JS必须获取像素client_id,然后通过ajax发送到我们的服务器,服务器将进行一些分析,然后将数据发送到FB像素。
因此,我必须在JS上获取像素client_id。
例如,在GA中,您可以通过以下代码获取client_id:ga.getAll()[0].get('clientId');
例如,通过JS发送到Pixel
fbq('track', 'AddToCart', {
content_name: 'Really Fast Running Shoes',
content_category: 'Apparel & Accessories > Shoes',
content_ids: ['1234'],
content_type: 'product',
value: 4.99,
currency: 'USD'
});
我看到的“网络”中的发送
https://www.facebook.com/tr/?id=pixel_id&ev=AddToCart&dl=https%3A%2F%2Flusido.000webhostapp.com%2Ffor_test%2FFB_pixel%2F&rl=&if=false&ts=1568822256426&cd[content_name]=Really%20Fast%20Running%20Shoes&cd[content_category]=Apparel%20%26%20Accessories%20%3E%20Shoes&cd[content_ids]=%5B%221234%22%5D&cd[content_type]=product&cd[value]=4.99&cd[currency]=USD&sw=1920&sh=1080&v=2.9.4&r=stable&ec=3&o=30&fbp=fb.1.1568641299934.291266893&it=1568732325055&coo=false&rqm=GET
...&fbp = fb.1.1568641299934.291266893 ...
请求已经有fbp。
所以,问题是:如何获得像素client_id?
答案 0 :(得分:0)
function getFbClientId() {
let result = /_fbp=(fb\.1\.\d+\.\d+)/.exec(window.document.cookie);
if (!(result && result[1])) {
return null;
}
return result[1];
}
getFbClientId();