我们使用如下代码从服务器发送购买事件:
using (var httpClient = new RestClient())
{
httpClient.SendAsync(new HttpRequestMessage
{
RequestUri = new Uri(url),
Method = HttpMethod.Get
});
}
但是大约 15-20% 的事件从未在 GA 中注册。Google 似乎总是以 GIF 和状态码 200 进行响应,因此很难判断哪些事件未成功处理。
一开始我们使用 javascript API 发送事件,但是当我们切换到服务器端时,我们复制了它正在创建的请求并尝试使用 HttpClient 复制它。
请求发送如下所示:
https://www.google-analytics.com/collect?v=1&_v=j47&a=817546713&t=event&ni=0&_s=1& dl=#scheme + 主机 + pathAndQuery#&dp=#path#&dt=#path#&ul=#browser语言#&de=#browser encoding#&sd=#bit#&sr=#screen resolution#&vp=#viewable browser area#&cid=#Id取自_ga cookie#&je=0&fl=24.0%20r0&ec=Ecommerce&ea=purchase &_u=SCEAAAALI20 %25~&jid=&tid=#TrackingId#>m=#TagManagerId#&ti=#OrderId#&ta=& tr=#TotalPrice#&tt=#TotalTax#&ts=#ShippingPrice#&tcc=#VoucherCode# &pa=purchase&cu=#CurrencyCode# &pr1nm=#ProducteName#&pr1id=#ProductId#&pr1pr=#ProductPrice#&pr1br=#Brand#&pr1ca=&pr1va=#Variant#&pr1qt=#Quantity#&z=#随机生成的唯一ID#
欢迎任何关于错误或如何调试的想法