我无法连接到mixpanel。
我尝试使用正确的api_key和api_secret,如下所示:
<html>
<head>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.8.2.min.js" />
</script>
<script type="text/javascript" src="faulty-labs-md5.js" />
</script>
</head>
<body>
<script type="text/javascript">
$(document).ready(function() {
$("#btnTest").click(function() {
var api_key = 'BigSecret';
var api_secret = 'BigSecret2';
var expire = new Date('2012', '12', '24').getTime() / 1000 + 3600;
var from_date = $("#date1").val();
var to_date = $("#date2").val();
var sig = faultylabs.MD5("api_key=" + api_key + "expire=" + expire + "from_date=" + from_date + "to_date=" + to_date + api_secret);
//var path = 'https://data.mixpanel.com/api/2.0/export?api_key=' + api_key + "&expire=" + expire + "&from_date=" + from_date + "&to_date=" + to_date;
var path = 'https://data.mixpanel.com/api/2.0/export?api_key=' + api_key + "&expire=" + expire + "&from_date=" + from_date;
path = path + "&sig=" + sig.toLowerCase();
$.jsonp({
type: 'GET',
url: path,
async: false,
callback: to_date, // sneaky bogus shenanigans
callbackParameter: 'to_date', // more of same
contentType: "application/json",
dataType: 'jsonp',
cache: true,
success: function(json) {
alert(json);
},
error: function(e) {
console.log(e.message);
}
});
});
});
</script>
<input type="text" id="date1" value="2012-10-29" />
<input type="text" id="date2" value="2012-10-29" />
<button onclick="return false" id="btnTest">Test</button>
</body>
</html>
如您所见,我尝试将此API与JSONP结合使用,但我迷失了方向。是否有人对mixpanel和JSONP有了解?
先感谢您。
编辑:我添加了页面的新版本。
最佳答案
从文档中:
https://mixpanel.com/docs/api-documentation/data-export-api#libs-js
假设您正确计算了签名,下面的示例将起作用:
$.getJSON('http://mixpanel.com/api/2.0/segmentation/?callback=?', {
event: event,
from_date: from_date,
to_date: to_date,
expire: expire,
sig: sig,
api_key: api_key
}, function (result) {
alert(result);
});
关于javascript - 如何使用mixpanel API?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13140336/