node.js请求多行

node.js request multi line

Google 分析测量协议说要为其 /batch 端点使用多行:

https://developers.google.com/analytics/devguides/collection/protocol/v1/devguide#batch

POST /batch HTTP/1.1
Host: www.google-analytics.com

v=1&tid=UA-XXXXX-Y&cid=555&t=pageview&dp=%2Fhome
v=1&tid=UA-XXXXX-Y&cid=555&t=pageview&dp=%2Fabout
v=1&tid=UA-XXXXX-Y&cid=555&t=pageview&dp=%2Fcontact

我如何使用 node.js 和请求做类似的事情?这是我当前的 /collect

代码
request.post(
      'http://www.google-analytics.com/batch',
      { form: { v:1,tid:'UA-xxxxx-1',cid:event.queryStringParameters.cid,t:'event',ec:'xxx',ea:"xxx", el:"xxx", ev:"xxx", dr:'xxx'} },
      function (error, response, body) {
        done(null,'Check for GA event');
      }
  );

将每一行合并为一个字符串,以“\n”分隔。

const request = require("request");

request({
    url: "http://www.google-analytics.com/batch",
    method: "post",
    body: "v=1&t=pageview&tid=UA-XXXXXXXX-X&cid=555&dl=https%3A%2F%2Fmydomain.com%2Ftest&dt=Test\nv=1&t=pageview&tid=UA-XXXXXXXX-X&cid=554&dl=https%3A%2F%2Fmydomain.com%2Ftest2&dt=Test2"
}, function(error, response, body) {
    if (error) { console.log(error); }
});

您的实时报告将在 2 个不同的页面上显示 2 个活跃用户。