使用 Google Analytics 追蹤聊天機器人上的用戶行為

卡米哥
Oct 19, 2021

--

以 Node.js 開發的 LINE Bot 為例

作為前情提要,請先閱讀由和風信使-戴均民提供的詳細步驟的教學文件:

  1. 讓聊天機器人也能看 Google Analytics (1)
  2. 讓聊天機器人也能看 Google Analytics (2)

根據文件的描述可以知道,只要打出 POST Request 到 https://www.google-analytics.com/collect ,並且傳遞對應的必要參數,就能夠從伺服器端新增一筆紀錄到 Google Analytics。

但是原作者說在 2021/6/17 之後,這個方法就失效了,在發出 Request 後,無法在 GA 上看見對應的紀錄。

為此,我分別透過 Insomnia、Ruby、Node.js 打出對應的 Request,並且比較其結果,結果發現 Insomnia 跟 Ruby 可以正常新增 GA 紀錄,只有 Node.js 不行。

觀察了一下個別打出的 Request 之間的差異後,逐步調整打出的 Request,最後發現只要在 Headers 內的 User-Agent 包含 fetch 或開頭為 axios/,GA 就會不工作。

所以,最後我使用的程式碼如下:

只要把 Node.js 偽裝成 Ruby 就可以用 GA 了哦!

Google 到底在幹嘛?

--

--