我正在尝试使用$ http和get请求调用api。我找不到404,当我看到电话时,它会将http://localhost:3000/附加到前面,这就是问题所在。我怎么能阻止它这样做?我正在使用角度和注入$ http。
app.factory('videos', ['$http', function($http){
function pullData(){
$http.get("api.redtube.com/data=redtube.Videos.searchVideos&output=json&search=hard&tags[]=Teen&thumbsize=medium").success(function(response){
o.videos.push(response)
});
}
pullData() // call the function to pull data from the API
var o = {videos: []
};
return o;
}])
答案 0 :(得分:0)
问题是网址,而不是$ http提供商。你错过了'?'表示数据是查询字符串的一部分的字符。请尝试使用此代码:
app.factory('videos', ['$http', function($http){
function pullData(){
$http.get("http://api.redtube.com/?data=redtube.Videos.searchVideos&output=json&search=hard&tags[]=Teen&thumbsize=medium").success(function(response){
o.videos.push(response)
});
}
pullData() // call the function to pull data from the API
var o = {videos: []
};
return o;
}])
编辑:对于CORS问题,请尝试使用JSONP
// Instead of
$http.get(...)
// use
$http.jsonp(...);