我创建了一个webapi
[EnableCors("*", "*", "*")]
[RoutePrefix("api/Movie")]
public class MovieController : ApiController
{
//IMovieRepository repo;
//public MovieController(IMovieRepository _repo)
//{
// this.repo = _repo;
//}
[Route("latest")]
[HttpGet]
public IHttpActionResult Get()
{
try
{
//var getAllMovies = repo.GetAll();
return Ok("hello");
}
catch (Exception ex)
{
return Ok(ex.Message);
}
}
}
我的angularJs Code
var _getMovies = function () {
return $http.get(serviceBase + 'api/movie/latest').then(function (results) {
return results;
});
};
答案 0 :(得分:0)
首先,如果你得到一个例外,对你的api的调用实际上正在工作,因为服务器正在抛出异常。例外情况来自服务器端代码,AngularJS根本没有与此问题相关。
你可能遇到的例外代码如下:
[RoutePrefix("api/Movie")]
public class MovieController : ApiController
{
IMovieRepository repo;
[Route("latest")]
[HttpGet]
public IHttpActionResult Get()
{
try
{
//var getAllMovies = repo.GetAll();
return Ok("hello");
}
catch (Exception ex)
{
return Ok(ex.Message);
}
}
}
null引用是你的repo没有被实例化。
您在问题中向我们展示的内容如下:
[RoutePrefix("api/Movie")]
public class MovieController : ApiController
{
[Route("latest")]
[HttpGet]
public IHttpActionResult Get()
{
try
{
//var getAllMovies = repo.GetAll();
return Ok("hello");
}
catch (Exception ex)
{
return Ok(ex.Message);
}
}
}
你没有理由遇到这种异常,所以我要说,清理,构建并再试一次!
有类似的东西:
[RoutePrefix("api/Movie")]
public class MovieController : ApiController
{
IMovieRepository repo;
public MovieController(IMovieRepository _repo)
{
this.repo = _repo;
}
[Route("latest")]
[HttpGet]
public IHttpActionResult Get()
{
try
{
//var getAllMovies = repo.GetAll();
return Ok("hello");
}
catch (Exception ex)
{
return Ok(ex.Message);
}
}
}
你可以点击"找不到无参数构造函数"。 那是因为你的依赖注入没有很好地配置(你的依赖容器中没有找到IMovieRepository的实现)