4

Ruby を使用して Google Measurement Protocol に投稿しようとしています。

uri = URI.parse("http://www.google-analytics.com/collect")
params = {"v"=>"1", "tid"=>"UA-XXXXXXXX-X", "cid"=>"XXXXXXXXX.XXXXXXXXX", "t"=>"event", "ec"=>"200", "ea"=>"John"}
result = Net::HTTP.post_form(uri, params) #<Net::HTTPOK 200 OK readbody=true> 
result.body # "GIF89a\x01\x00\x01\x00\x80\xFF\x00\xFF\xFF\xFF\x00\x00\x00,\x00\x00\x00\x00\x01\x00\x01\x00\x00\x02\x02D\x01\x00;" 

また、POST の代わりに GET リクエストを送信しようとしました:

RestClient.get("http://www.google-analytics.com/collect", params: params, timeout: 4, open_timeout: 4) # "GIF89a\x01\x00\x01\x00\x80\xFF\x00\xFF\xFF\xFF\x00\x00\x00,\x00\x00\x00\x00\x01\x00\x01\x00\x00\x02\x02D\x01\x00;" 

そして、イベントは追跡されていません: ここに画像の説明を入力

Chromeに入力するだけで同じパラメーターを送信しようとしました:

ここに画像の説明を入力

出来た:

ここに画像の説明を入力

Rubyを使用してManagement Protocolにリクエストを送信しているときに、ヘッダーなどが欠落していると思います。しかし、私は何が欠けているのか分かりません。

4

3 に答える 3