首页 > 解决方案 > 谷歌测量协议给出奇怪的反应

问题描述

我正在尝试使用 php7 和 guzzle 为我的 rest API 进行设置。当我使用 cli 将 curl 中的请求发送到调试 url 时,我得到了一个不错的 json 响应

{
  "hitParsingResult": [ {
    "valid": true,
    "parserMessage": [ ],
    "hit": "/debug/collect?v=1\u0026t=pageview\u0026tid=UA-1234567-1\u0026uid=UA-1234567-1\u0026dh=test.domain.com\u0026dp=/api/user/verify/flow"
  } ],
  "parserMessage": [ {
    "messageType": "INFO",
    "description": "Found 1 hit in the request."
  } ]
}

但是如果我将它发送到产品 url,我每次都会得到奇怪的响应

GIF89a▒▒▒▒▒,D;

有谁知道如何解决这个问题?

这是我在 cli 上运行的

curl -X POST -d 'v=1&t=pageview&tid=UA-xxxxxxxxx-1&uid=UA-xxxxxxxxx-1&dh=test.domain.com&dp=%2Fiwsapi%2Fuser%2Fverify%2Fflow' https://www.google-analytics.com/debug/collect

对于非调试模式,我只是删除调试

curl -X POST -d 'v=1&t=pageview&tid=UA-xxxxxxxxx-1&uid=UA-xxxxxxxxx-1&dh=test.domain.com&dp=%2Fiwsapi%2Fuser%2Fverify%2Fflow' https://www.google-analytics.com/collect

在guzzle中,我正在建造它

$promise = $guzzle->post("/debug/collect", [
                                'proxy' => [
                                    'http'  => 'http://proxy:8080',
                                    'https'  => 'http://proxy:8080', 
                                ],
                                'form_params'=>[
                                    'v'=>1,
                                    't'=>'pageview',
                                    'tid'=>GOOGLE_ID,
                                    'uid'=>$_SERVER['HTTP_CTVFNTUSERNAME'],
                                    'dh'=>WWWHOST,
                                    'dp'=>$_SERVER['REQUEST_URI'],
                                    //'dt'=>'homepage'
                                ]
                            ]);

标签: curlgoogle-analyticsphp-7guzzlemeasurement-protocol

解决方案


响应代码

如果收到 HTTP 请求,Measurement Protocol 将返回 2xx 状态代码。如果有效负载数据格式不正确,或者有效负载中的数据不正确或未经 Google Analytics(分析)处理,Measurement Protocol 不会返回错误代码。

如果您没有获得 2xx 状态代码,则不应重试该请求。相反,您应该停止并更正 HTTP 请求中的任何错误。

无论如何,测量协议实际上并没有验证您的命中,您将得到的唯一响应是 1x1 像素图像GIF89a▒▒▒▒▒,D

所以真的没有什么可以解决它应该的工作。唯一会向您发送正确响应的是您似乎正在使用的调试端点


推荐阅读