2

jQueryを使用してmixpanelデータエクスポートAPIを使用する必要があります。
これによると:mixpanel APIを使用するにはどうすればよいですか?そしてmixpanelによると:https ://mixpanel.com/docs/api-documentation/data-export-api#libs-js 、私はこれを使うことができます:

$.getJSON('http://mixpanel.com/api/2.0/engage/?callback=?', {
        api_key: apiKey,
        expire: expire,
        sig: sig
    },
    function (result) {
        alert(result);
    }
);

しかし、結果として、結果としてエラーが発生します。

"unknown param: callback
for params: {'callback': 'jQuery18208090281161325954_1358248117308', 'project_id': 160130}"

ブラウザを開いたときに正しいデータが表示されるので、URLとデータが正しいことを知っていhttp://mixpanel.com/api/2.0/engage/?api_key=...&expire=...&sig=...ます。

私のコードの何が問題になっていますか?

4

1 に答える 1

4

コードに問題はありません。

このパラメーターは、やなどcallbackの他のエンドポイントで機能しますが、このエラーはこの特定のエンドポイントで返されます。.../events/top.../funnels/listengage

このエンドポイントはJSONPコールバックをサポートしていないため、Mixpanelの問題としてこれを提起する必要があります。

やや紛らわしいことに、次のページの手順に従って、別のエンドポイント を使用してデータを投稿できます: https ://mixpanel.com/docs/people-analytics/people-http-specification-insert-dataengage

このエンドポイントで機能する例を次に示します。

var mixpanel_token = "<insert token for your mixpanel project here>";
var myData = { "$set": {         
                  "$first_name": "John", 
                  "$last_name": "Smith" },
                "$token": mixpanel_token, 
                "$distinct_id": "99999", 
                "$ip": "0" };

var dataEncodedToBase64 = window.btoa(JSON.stringify(myData));

var path = 'http://api.mixpanel.com/engage?callback=?';

$.getJSON(path, { 'data': dataEncodedToBase64, 'verbose': 1 }, function(json) {
        console.log("Success");
        console.log(json);
});

コードは、質問で提供したリンク内の他のエンドポイントでは機能するはずであり、では機能しないことに注意してくださいengage

于 2013-01-15T15:59:00.373 に答える