• home > webfront > ECMAS > angularjs >

    $resource和$http的区别

    Author:zhoulujun@live.cn Date:

    不同的是$resource是对$http更高层次的抽象,$resource依赖于$http,也就是说$resource是在$http的基础上开发的。

    $resource和$http都是用来处理http请求的,但是具体又有哪些区别呢?

    $resource

    var User = $resource('api/user/:userId');
    User.get({userId:123}, function(data) {
        ...
    });

    $http

    var req = {
     method: 'GET',
     url: 'http://example.com/api/user/:userId',
    }$http(req).then(function(data){
        ...
    })

    本质上功能都是一样的,都是基于XMLHttpRequest和服务器交互的服务。

    不同的是$resource是对$http更高层次的抽象,$resource依赖于$http,也就是说$resource是在$http的基础上开发的。

    基本上你可以把$http等同于jQuery的$.ajax,和$.ajax类似,$http除了有$http方法为,也有快捷方法$http.get$http.post$http.put等快捷方法,还有$http(url)返回的是一个Promise。

    $http通常用于和RESTful server-side交互,要求接口RESTful话,'$resource(url)'返回的不Promise,也是一个资源对象,你可以对一个资源对象进行get、query、save、delete等操作。





    转载本站文章《$resource和$http的区别》,
    请注明出处:https://www.zhoulujun.cn/html/webfront/ECMAScript/angularjs/2016_1202_7913.html