api - 谁能提供访问此 Last.FM API 的代码示例?

标签 api http rest last.fm

我正在尝试学习如何正确使用 AJAX 和 RESTful API,虽然我明白了这一点,但诸如身份验证之类的实际实现让我有些困惑。特别令人沮丧的是,Last.FM 或 TVRage.com 等网站上的文档都没有实际列出代码示例,我觉得这对我有很大帮助。

如果有人特别使用过 Last.FM API 并且可以给出一个快速代码示例——任何他们的方法——我将非常感激。

现在,我正在尝试根据 their instructions 验证自己的身份.

Construct your api method signatures by first ordering all the parameters sent in your call alphabetically by parameter name and concatenating them into one string using a <name><value> scheme.

A <name><value>方案?喜欢,<apikey><keyitself> ?然后在通过身份验证时我该怎么做,以某种方式将 session 存储一个小时然后刷新,或者在每次调用时进行身份验证?我只是不知道如何实际实现它的细节......

最佳答案

如果您查看 API 文档,您将在左侧导航菜单中看到一个方法列表(让我们在本例中使用 artist.getInfo - http://www.last.fm/api/show/artist.getInfo)。

现在,为了进行调用,您需要向 restful 网络服务发出 AJAX 请求,然后它会返回一个 XML 或 JSON 响应。要对此进行测试,您可以构建一个查询并查看响应。

http://ws.audioscrobbler.com/2.0/?method=artist.getinfo&artist=After+The+Burial&api_key=57ee3318536b23ee81d6b27e36997cde&format=json

如果您尝试此链接,您将看到数据的 JSON 表示形式。如果您查看我回答开头提供的 API 链接,您也可以开始尝试使用一些可选参数。下一个要解决的问题是如何进行 AJAX 调用。

如果您遵循本指南,它将向您展示进行 AJAX 调用的 JavaScript 和 jQuery 方法 How to make an AJAX call without jQuery? .在我的示例中,我们将使用上面详述的相同参数创建一个 POST 请求方法:

$.ajax({
    type : 'POST',
    url : 'http://ws.audioscrobbler.com/2.0/',
    data : 'method=artist.getinfo&' +
           'artist=After+The+Burial&' +
           'api_key=57ee3318536b23ee81d6b27e36997cde&' +
           'format=json',
    dataType : 'jsonp',
    success : function(data) {
        // Handle success code here
    },
    error : function(code, message){
        // Handle error here
    }
});

当您点击成功回调时,“数据”参数表示已解析为 JavaScript 对象的 JSON 响应。

这是我制作的一个 jsfiddle,它演示了对 last.fm 的 Web 服务调用的实现:

http://jsfiddle.net/zvsrF/6/

只需确保获得您自己的 API key ,并将成功回调重构为比我的示例优雅得多。

关于api - 谁能提供访问此 Last.FM API 的代码示例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21956358/

相关文章:

java - HTTP服务器: what to do if header received is too long? 如何管理流?

javascript - 使用 Youtube Data API 3.0 获取用户名

java - 无法向springboot发送http post请求

php - 无法使用 wss 连接到 websocket ://in php

java - 将 JUnit 转换为 RESTful 服务

json - 如何将flutter中的日期解析为与Java ZonedDateTime兼容的json字符串

php - REST 风格的 URLS 和 PHP

delphi - 如何使用 SQL 以编程方式访问 Windows Live 照片库中的面部识别缓存?

android - 在 Android 上使用 Facebook API 创建自定义墙贴

api - YouTube 数据 API 视频插入/更新 - 设置 'Game title'