国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

詳解AngularJs中$resource和restfu服務端數據交互

2019-11-20 08:55:12
字體:
來源:轉載
供稿:網友

$resource

創建一個resource對象的工廠函數,可以讓你安全的和RESFUL服務端進行數據交互。

安裝

ngResource模塊是一個可選的angularjs模塊,如果需要使用,我們要單獨引用js

<script type="text/javascript" src="/javascripts/angular-resource.js">

$resource應用

我們并不是直接通過$resource服務本身同服務器通信,$resource是一個創建資源對象的工廠,用來創建同服務端交互的對象。

var User = $resource('/api/users/:userId', {userId:'@id'});

返回的User對象包含了同后端服務進行交互的方法,我們可以把User對象理解成同RESTFul的后端服務進行交互的接口。

該對象包含兩個get類型的方法已經三個非get類型的方法。

User.get({id:'123'}, successFn, errorFn);

該方法向url發送一個get請求,并期望一個json類型的響應。這里會向/api/users/123發送一個請求,successFn處理請求成功響應,errorFn處理錯誤。

User.query(params, successFn, errorFn)

get()方法使用類似,一般用來請求多條數據。

save(params, payload, successFn, errorFn);

save方法會發起一個post請求,params參數用來填充url中變量,對象payload會作為請求體進行發送

delete(params, payload, successFn,errorFn)

delete方法一個DELETE請求,payload作為消息體進行發送

remove(params, payload, successFn, errorFn)

同delete類似,不同的是remove用來移除多條數據

通過$resource生成的對象來同服務器進行交互的時候,我們看可以定義處理成功以及處理失敗的函數,這些函數接受的參數不僅僅是簡單的對象,而是經過包裝之后的對象,會被添加$save() , $remove() , $delete三個方法,可以直接調用這三個方法來后服務端進行交互。

User.get({id:'123'}, function(user){ user.name = 'changeAnotherName'; user.$save();//這里等價于User.save({id:'123'},{name:'changeAnotherName'})});

$resource擴展

$resource對常見的五種請求進行封裝,我們還可以對$resource進行擴展。

這里要擴展$resource我們需要傳入第三個參數,該參數是一個對象。

$resource('/api/users',{},{ sendEmail:{  method:'',  url:'',  params:{},  isArray:boolean,  transformRequest:函數或者函數數組  transformResponse:函數或者函數數組  cache:布爾型或緩存對象  timeout:數值或promise對象  withCredentials:布爾類型  responseType:字符串,用來設置XMLHttpRequestResponseType屬性 }})

我們也可以將$resource服務當做自定義服務的基礎。

angular.module('testApp', ['ngResource']),factory('UserService',['$resource', function($resource){  return $resource(url,{},{});}]);

總結

以上就是關于AngularJs中$resource和restfu服務端數據交互的全部內容,希望這篇文章對大家學習或者使用AngularJS能有所幫助,如果有疑問大家可以留言交流。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 桃园县| 若羌县| 无极县| 曲麻莱县| 沙洋县| 始兴县| 天柱县| 宽甸| 鄂托克旗| 万盛区| 万安县| 商河县| 樟树市| 金秀| 和龙市| 乐安县| 中阳县| 临海市| 青龙| 南召县| 玉门市| 平定县| 昆山市| 宜良县| 盖州市| 定陶县| 东安县| 松江区| 石棉县| 永登县| 泊头市| 永安市| 洞头县| 淳化县| 化州市| 巩义市| 盐亭县| 师宗县| 吉安市| 读书| 尚义县|