FB像素。获取客户端 ID (fbp)

FB pixel. Get client id (fbp)

我们想像 Google Analytics 一样在 FB Pixel 中推送数据。
通过这个 link https://www.facebook.com/tr?id=&ev=test_event 我可以在 Pixel 中推送数据但是它只会事件,对于 link 这个事件和客户端,需要 client_id (在像素中它称为 fbp,如果我别搞错了)。

一般我们想做的事情:
JS 必须得到 pixel client_id,然后通过 ajax 发送到我们的服务器,服务器会进行一些分析,然后将数据发送到 FB pixel。
所以,我必须在 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' 
});

在"Network"我明白了,那个发送
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?

function getFbClientId() {
  let result = /_fbp=(fb\.1\.\d+\.\d+)/.exec(window.document.cookie);
  if (!(result && result[1])) {
    return null;
  }
  return result[1];
}
getFbClientId();