【发布时间】:2018-01-29 22:58:44
【问题描述】:
要从 API 获取不同的数据,我应该使用不同的请求还是一次获取来更改变量? 我浏览了互联网,答案/建议几乎都是针对 PHP 的,我不太了解这种语言。因此,我在这里寻求建议/答案。
这是我目前的代码:
//fetching movie
fetchMovie = (name) =>{
const API = '&api_key=72049b7019c79f226fad8eec6e1ee889';
let movieAPI = '';
//if the length of the movies is equal to zero fetch default search
if( this.state.movies.length === 0 ){
movieAPI = "https://api.themoviedb.org/3/discover/movie?api_key=72049b7019c79f226fad8eec6e1ee889&sort_by=popularity.desc&page=1";
}else{
//search the movie name
movieAPI = "https://api.themoviedb.org/3/search/movie?page=1&query=" + name + API;
}
//make request
const req = new Request(movieAPI, {
method: 'GET',
cache: 'default'
});
fetch(req).then(response =>{
return response.json();
}).then(data =>{
//if data fetched result is greater than 0
if(data.results.length > 0){
this.setState({
movies: data.results
});
}
}).catch(err => {
console.log("ERROR: " + err);
})
}
现在要解释一下我想了解的是: 从上面的代码可以看出,我只能做一个默认的请求数据或按名称。现在,如果我想获取不同的查询,我应该为每个查询编写不同的代码还是重用代码:
movieAPI = "https://api.themoviedb.org/3/"+ variable +"/movie?api_key=72049b7019c79f226fad8eec6e1ee889&date="+ date +"&name=" +name + "&otherQuery=" + query ;
【问题讨论】:
标签: javascript reactjs api fetch