なんか、analytics.js で簡単に読み出せていた client_id が
gtag.js になってから、Cookie から直接読み取っている人とかが結構多いみたいだったので、メモしておく
実装
現在、gtag のAPIリファレンスには 普通に正式な読み出し方が書いてある
https://developers.google.com/gtagjs/reference/api?hl=ja#get_field_name
結構最近なんですかね、更新されたの
あとは普通にドキュメントに沿って呼ぶだけ
gtag('get', '<G | UA>-XXXXXXXX', 'client_id', (client_id: string) => {
console.log(client_id);
});
勿論 「定義されてないお」 って怒られるので定義する(typescript)
本当は @types/gtag.js だけで完結させたかったけど、'get' command が定義されてなかったので、作る
xxxx.d.ts
declare namespace Gtag {
interface Gtag {
(
command: 'get',
targetId: string,
fieldName: 'client_id' | 'session_id' | 'gclid',
callback: (field) => void
): void;
}
}
おしまい
そんなに詳しいわけでは無いので、なんか変なとこあったら教えてください