我使用Jquery将JSON数据发送到Grooveshark API以获取搜索结果,但这是我获得的结果-
{"errors":[{"code":2,"message":"Method not found."}]}这段代码触发了grooveshark API。我想不出这个问题,任何帮助都是很好的。
$.ajax({
type: "POST",
url: 'http://api.grooveshark.com/ws3.php?sig=secret_code',
data: {
"method":"getSongSearchResults",
"header":{"wsKey":"secret_key"},"parameters":{"query":"megadeth hangar 18","country":"1","limit":"2","offset":""}
},
dataType: 'jsonp',
crossDomain: true,
async: false,
success: function () {
alert("success!");
}
});发布于 2013-03-08 02:09:32
所以,我还没有完全做到这一点,但我想知道如何获得请求URL末尾的secret_code。
从https://github.com/fastest963/GroovesharkAPI-PHP/blob/master/gsAPI.php#L1044翻译来看,sig似乎不是你申请公共API密钥时得到的密码。
相反,它是要发送给ajax调用中的数据参数的字典的HMAC(md5)。我找到了https://code.google.com/p/crypto-js/#HMAC,并使用它来生成签名,方法是将您作为数据参数发送给$.ajax的dict,并使用来自gs的秘密对其进行签名。
我正在尝试调用start session,但我以
Object { readyState=0, status=0, statusText="error"}其中包含的信息较少,但我非常确定该URL中包含的不是您的秘密。
https://stackoverflow.com/questions/15198004
复制相似问题