themoviedb JSON API with jQuery

themoviedb JSON API with jQuery

本文关键字:jQuery with API JSON themoviedb      更新时间:2023-09-26

我想做一些事情,似乎应该是简单的。获取文本字段的输入,并通过API在themoviedb.org数据库中搜索它。

我使用jQuery和themoviedb.org APIv3,它支持JSONP。但是,我得到的是这样的响应:

{"status_code":6,"status_message":"Invalid id - The pre-requisite id is invalid or not found"}

这并不能告诉我很多。什么的ID ?

我知道的事:

    我有正确的API密钥
  • 搜索按钮正在正确提交和获取输入的值

这是一个jsfiddle,这是关于搜索电影的API文档。另外,请查看这个版本的API文档。我认为这与查询参数有关。

真的,我不知道我在做什么JSON,所以我希望这将是一个有代表性的例子,将帮助我理解它

您只需要正确数量的查询字符串参数。需要设置的参数为queryapi_key。我在这里找到了这些要求http://docs.themoviedb.apiary.io/#get-%2F3%2Fsearch%2Fmovie。不如试试这个:

$(document).ready(function() {
    var url = 'http://api.themoviedb.org/3/',
        mode = 'search/movie?query=',
        input,
        movieName,
        key = '&api_key=470fd2ec8853e25d2f8d86f685d2270e';
    $('button').click(function() {
        var input = $('#movie').val(),
            movieName = encodeURI(input);
        $.ajax({
            type: 'GET',
            url: url + mode + input + key,
            async: false,
            jsonpCallback: 'testing',
            contentType: 'application/json',
            dataType: 'jsonp',
            success: function(json) {
                console.dir(json);
            },
            error: function(e) {
                console.log(e.message);
            }
        });
    });
});​

工作小提琴:http://jsfiddle.net/fewds/srdHD/3/

注意:因为这很可能是你的真正的 api密钥,我建议请求一个新的!

您使用的URL不正确,您的示例生成以下请求:

http://api.themoviedb.org/3/search/MOVIENAME?api_key=APIKEY

但是根据API文档,它应该是这样的:

http://api.themoviedb.org/3/search/movie?api_key=APIKEY&query=MOVIENAME

我已经分叉并更新了你的jsfiddle

需要正确的查询参数个数。必需的参数是query和api_key

如果您在此得到错误的urlencode或解码请检查您的url在urlencode。In或urldecode.in