WordPress wp_remote_get和Keen.io事件创建

时间:2017-07-20 17:12:08

标签: keen-io

我正在使用WordPress和wp_remote_get

我一直收到404错误,试图发布到我的活动收集中,我不确定我是否做得对。

以下是我目前正在使用的代码:

$bucket = array( 'purchase' => json_encode( $options ) );

$keen_url = 'https://api.keen.io/3.0/projects/PROJECTNAME/events/installs?api_key=KEY';

$headers = array( 
    'Content-Type' => 'application/json'
);

$response = wp_safe_remote_get( $keen_url, array( 'headers' => $headers, 'body' => $bucket ) );
die( '<pre>' . print_r( $response, true ) );

1 个答案:

答案 0 :(得分:0)

有两种方法可以发布到Keen,也许他们在这里混合了。

如果您posting a single event直接installs到达purchase网址,我希望您的正文只能作为安装活动本身,而不包含像#34;购买&#的收藏品名称34 ;.如果您从$bucket中删除data并且只拥有JSON编码的事件属性,该怎么办?

您的最终请求网址如下所示,其中https://api.keen.io/3.0/projects/PROJECT_ID/events/installs?api_key=WRITE_KEY&data=ENCODED_DATA是网址编码的AND-base-64编码事件正文,例如:

purchases

也许你正在使用recording multiple events的方法,它采用了一系列集合及其事件。如果您想尝试该方法,请将$bucket部分保留在$keen_url中,并尝试将https://api.keen.io/3.0/projects/PROJECTNAME/events?api_key=KEY'修改为:

events(请注意,请求直接发送到events/COLLECTION_NAME而不是$ curl https://api.keen.io/3.0/projects/PROJECT_ID/events \ -H 'Authorization: WRITE_KEY' \ -H 'Content-Type: application/json' \ -d '{ "signups": [ { "name" : "bob" }, { "name" : "mary" } ], "purchases": [ { "price": 10 }, { "price": 20 } ] }'

以下是cURL中该请求的示例:

{
  "places": {
    "a": {
      "city": "Madrid"
    },
    "b": {
      "city": "Madrid"
    },
    "c": {
      "city": "SomeCity"
    }
  }
}