繁体   English   中英

Angular SPA与REST API的关系

[英]How Angular SPA relates to REST API

我是Node的新手,我试图了解uiRouter具有某些状态的Angular SPA如何与Express REST API关联以从数据库获取数据。 任何人都可以请我为例吗?

谢谢

AugularJS SPA可以通过$ resource等各种模块或诸如Restangular之类的更完整的库与REST API进行通信

$ resource示例

例如,如果您的Express API可以在/user/<userId>GET用户,然后通过POST将其保存回去,则可以在AngularJS上执行此操作

var User = $resource('/user/:userId', {userId:'@id'});
var user = User.get({userId:123}, function() {
  user.abc = true;
  user.$save();
});

要了解$ resource对每个操作在HTTP上将执行的操作,请参考此默认映射

{ 'get':    {method:'GET'},
  'save':   {method:'POST'},
  'query':  {method:'GET', isArray:true},
  'remove': {method:'DELETE'},
  'delete': {method:'DELETE'} };

$ http是低级别的(由REST客户端库建立)

这里的另一个答案建议$http 尽管完全有可能这样做,但是REST库已经基于$http构建,为您提供对HTTP动词和常规REST便利的方便支持。

如果您使用$http ,则必须手动执行该操作(更不用说您将不会从构建这些库的智慧和最佳实践中受益)

我不建议使用$resource 它是保持承诺的链接的对象,当承诺被解决时,它还将包含数据本身。 因此,如果您想在数据到来时执行一些操作,则无论如何都必须为该承诺设置一个回调。 请改用$http 它是异步请求的较低级别的角度抽象。 是使用$http

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM