我正在检查一个小应用程序,它会从API中获取电影列表。您输入一个单词,然后它会列出所有带有该单词的电影。获取列表的代码是这一个:
var requestApi = function (query, callback) {
$.ajax({
url: apiUrl,
data: {
q: query},
dataType: 'jsonp'
}).success(callback);
};
当代码调用此函数时,它会执行:
requestApi(movieTitle, callbackFunction);
这是JSON文件的一部分:
{
"total": 33,
"movies": [
{
"id": "10122",
"title": "Spider-Man",
"year": 2002,
...
}
我的问题是,requestApi
如何知道q: query
是标题?如果我致电requestApi(movieId, callbackFunction);
我不明白为什么不起作用。
由于
答案 0 :(得分:2)
您应该查看Api文档,q必须是文本搜索的参数。 如果你想按id搜索,你可能需要用另一个变量名补充q。
如果你看看Imdb api,你可以使用“s”进行标题搜索,使用“i”进行id搜索。 http://www.omdbapi.com/
答案 1 :(得分:1)
您在网址中提供的Api是接受电影标题作为参数。它可能像api一样休息。假设您将标题作为参数发送,您应该阅读API文档以查看要作为参数发送的内容
答案 2 :(得分:1)
因为API清楚地在数据库中查找单词电影标题。就像你手工搜索电影一样,我们可以在IMDB上说。如果您在其数据库中搜索该电影的ID
,则不会得到任何结果答案 3 :(得分:0)
您发送请求的API端点可能只处理标题节点中的搜索。您使用的是什么API?
答案 4 :(得分:0)
快速查看http://developer.rottentomatoes.com/io-docs后,按ID或标题查找电影的网址似乎不同:
对于标题搜索,您可以在url:
处使用参数q
/api/public/v1.0/movies.json
按ID,您可以将ID用作网址的一部分(将:id
替换为ID号):
/api/public/v1.0/movies/:id.json