使用Restangular和ngResource的区别是什么

使用Restangular和ngResource的区别是什么

Restangular和ngResource的主要区别。

  • Restangular使用promise(承诺)来代替对$resource这样的对象进行 “神奇 “的填充(promise代表一个操作的最终结果。你将使用promise来指定当操作成功或失败时要尝试什么)。
  • Restangular对尾部斜线、URL内的附加:、转义信息、只期望得到列表的数组等都没有问题。
  • Restangular支持所有的HTTP方法,而$resource只支持 “GET”、”POST”、”PUT”、”DELETE”。
  • Restangular支持盒子里的Etag。你不需要做任何事情。ETags和If-None-Match将在你的所有请求中得到利用。
  • 在Restangular中,如果你从服务器上收到一些以链接为特征的项目,你就会用它来询问服务器,而不是手动写URL。
  • 每次你想尝试一个邀请,你就会使用Restangular返回的东西在干草中滚动。你不会为此创建一个替换对象。但是,在使用resource时,你必须为每个请求创建一个resource时,你必须为每个请求创建一个resource对象。
  • 通过$resource,你想写下URL模板。在Restangular中,你不写任何URL。你只写你想获取的资源的名称,就是这样。
  • 如果你有嵌套的RESTful资源,Restangular可以为你处理。你不需要知道URL、路径或任何东西来尝试你想要的所有HTTP操作。
// Restangular returns promises
Restangular.all('users').getList() // GET: /users
    .then(function (users) {
  
        // Returns an inventory of users
        // First Restangular obj in list: { id: 123 }
        scope.user = users[0]; 
    })
// code
  
// Restangular objects are self-aware and 
// skills to form their own RESTful requests
// GET: /users/123/carsscope.user.getList('cars'); 
  
// You'll also use your own custom methods
// on Restangular objects
// POST: /users/123/sendMessage
scope.user.sendMessage(); 
  
// Chain methods together to simply
// build complex requestsscope.user.one('messages', 123)
    .one('from', 123).getList('unread');
// GET: /users/123/messages/123/from/123/unread
JavaScript

简而言之,我们会说,除了额外的功能,因此基于承诺的方法,Restangular还可以处理你所有的URL,以便你不需要了解它们。

Restangular.one("users", 123).get().then(function(user) {
    scope.user = user;
});
  
// code
  
// Automatically does the request to /users/123/cars 
// because it remembers during which object you're asking it.scope.user.getList('cars')
JavaScript

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册