溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

restangular初體驗

發(fā)布時間:2020-07-22 13:59:01 來源:網(wǎng)絡(luò) 閱讀:885 作者:羅茲威爾 欄目:開發(fā)技術(shù)

Restangular是一種AngularJS服務,可以使用最少的客戶端代碼簡化常見的GET,POST,DELETE和UPDATE請求。它適用于任何從RESTful API中獲取數(shù)據(jù)的WebApp。

可以從bower和npm包管理器中獲取restangular,初次嘗試也可以使用cdn

<script type="text/javascript" src="http://cdnjs.cloudflare.com/ajax/libs/restangular/1.5.1/restangular.js"></script>
<script type="text/javascript" src="http://cdnjs.cloudflare.com/ajax/libs/restangular/1.5.1/restangular.min.js"></script>

第一種是未壓縮版,第二種是壓縮版,相比前者壓縮版體積更小。

// Add Restangular as a dependency to your app
angular.module('your-app', ['restangular']);// Inject Restangular into your controller
angular.module('your-app').controller('MainCtrl', function($scope, Restangular) {  // ...});

這里演示了如何加載restangular。

注入rest的時候要用小寫,作為依賴的時候要大寫,不然會報錯。

// First way of creating a Restangular object. Just saying the base URL
var baseAccounts = Restangular.all('accounts');// This will query /accounts and return a promise.
baseAccounts.getList().then(function(accounts) {  
    $scope.allAccounts = accounts;
});

第一行代碼聲明了基礎(chǔ)的路由地址,.getList()用于通過路由/accounts發(fā)起一次查詢請求。


var newAccount = {name: "Gonto's account"};// POST /accounts
baseAccounts.post(newAccount);

向/accounts地址發(fā)送post請求,發(fā)送的數(shù)據(jù)為newAccount對象


// Just ONE GET to /accounts/123/buildings/456
Restangular.one('accounts', 123).one('buildings', 456).get()

one方法為向URL中追加參數(shù),第一個參數(shù)是參數(shù)名,第二個是參數(shù)值,最終的get()決定了請求為get方式還是post方式。

當然one方法也可以不帶參數(shù)名,比如像我項目中就有這么一行代碼

function delete(id){
    Restangular.all('service').one(id).remove();
}

這里請求為delete,向service發(fā)送刪除請求,刪除的id為XXX,最終形成的路由為

/service/`id`

暫時常用的是這些,如果有其他方式會另行補充。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI