AngularJS入門教程之與服務(wù)器(Ajax)交互操作示例【附完整demo源碼下載】
本文實(shí)例講述了AngularJS與服務(wù)器Ajax交互操作。分享給大家供大家參考,具體如下:
AngularJS從Web服務(wù)器請(qǐng)求資源都是通過(guò)Ajax來(lái)完成,所有的操作封裝在$http服務(wù)中,$http服務(wù)是只能接收一個(gè)參數(shù)的函數(shù),這個(gè)參數(shù)是一個(gè)對(duì)象,用來(lái)完成HTTP請(qǐng)求的一些配置,函數(shù)返回一個(gè)對(duì)象,具有success和error兩個(gè)方法。
用法如下:
$http({method:'post',url:'loginAction.do' }).success(function(data,status,headers,config){ //正常響應(yīng)回調(diào) }).error(function(data,status,headers,config){ //錯(cuò)誤響應(yīng)回調(diào) });
狀態(tài)碼在200-299之間,會(huì)認(rèn)為響應(yīng)是成功的,success方法會(huì)被調(diào)用,第一個(gè)參數(shù)data為服務(wù)器端返回的數(shù)據(jù),status為響應(yīng)狀態(tài)碼。后面兩個(gè)參數(shù)不常用,這里不做介紹。有興趣的朋友請(qǐng)參考AngularJs API文檔。
除此之外$http服務(wù)提供了一些快捷方法,這些方法簡(jiǎn)化了復(fù)雜的配置,只需要提供URL即可。比如對(duì)于post請(qǐng)求我們可以寫(xiě)成下面這個(gè)樣子:
$http.post("loginAction.do") .success(function(data,status,headers,config){ //正常響應(yīng)回調(diào) }).error(function(data,status,headers,config){ //錯(cuò)誤響應(yīng)回調(diào) });
下面來(lái)看一個(gè)案例:
<!DOCTYPE html> <html ng-app="serverMod"> <head lang="en"> <meta charset="UTF-8"> <script type="text/javascript" src="angular-1.3.0.14/angular.js"></script> <title>tutorial09</title> </head> <body ng-controller="ServerController" ng-init="init()"> <p>name:{{name}}</p> <p>age:{{age}}</p> <button ng-click="getInfo()">請(qǐng)求</button> </body> <script> var serverMod = angular.module("serverMod",[]); serverMod.controller("ServerController",function($scope,$log,$http){ $scope.init = function() { $log.info("init functionn"); } $scope.getInfo = function() { $http.get("json/person.json").success(function(data,status){ alert(status); $scope.name = data.name; $scope.age = data.age; }); } }); </script> </html>
點(diǎn)擊”請(qǐng)求”按鈕,我們通過(guò)$http服務(wù)以get方式向服務(wù)器請(qǐng)求數(shù)據(jù),服務(wù)器響應(yīng)數(shù)據(jù)格式通常為一段Json,這里我們用一個(gè)文本文件代替,person.json內(nèi)容如下:
{"name":"Rongbo_J","age":"23"}
返回的數(shù)據(jù)會(huì)放在data參數(shù)中,我們可以獲取服務(wù)器響應(yīng)的內(nèi)容將數(shù)據(jù)在視圖中展示出來(lái)。
完整demo實(shí)例代碼點(diǎn)擊此處本站下載。
希望本文所述對(duì)大家AngularJS程序設(shè)計(jì)有所幫助。
- ajax 技術(shù)和原理分析
- 談?wù)凙jax原理實(shí)現(xiàn)過(guò)程
- Ajax的內(nèi)部實(shí)現(xiàn)機(jī)制、原理與實(shí)踐小結(jié)
- Ajax工作原理深入理解
- jquery的ajax跨域請(qǐng)求原理和示例
- 完成了AJAX樹(shù)附原理分析
- ajax 文件上傳應(yīng)用簡(jiǎn)單實(shí)現(xiàn)
- Ajax方式提交帶文件上傳的表單及隱藏iframe應(yīng)用
- Ajax+asp應(yīng)用實(shí)例 注冊(cè)模塊,表單提交
- Ajax PHP簡(jiǎn)單入門教程代碼
- Ajax原理與應(yīng)用案例快速入門教程
相關(guān)文章
angular4中*ngFor不能對(duì)返回來(lái)的對(duì)象進(jìn)行循環(huán)的解決方法
今天小編就為大家分享一篇angular4中*ngFor不能對(duì)返回來(lái)的對(duì)象進(jìn)行循環(huán)的解決方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-09-09Angularjs 實(shí)現(xiàn)一個(gè)幻燈片示例代碼
本文主要介紹Angularjs 寫(xiě)一個(gè)幻燈片的知識(shí),這里整理了詳細(xì)的資料,及實(shí)現(xiàn)代碼和實(shí)現(xiàn)效果圖有需要的小伙伴可以參考下2016-09-09AngularJs用戶登錄問(wèn)題處理(交互及驗(yàn)證、阻止FQ處理)
這篇文章主要為大家詳細(xì)介紹了AngularJs用戶登錄問(wèn)題處理,包括交互及驗(yàn)證、阻止FQ處理,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-10-10Angular2使用Angular-CLI快速搭建工程(二)
這篇文章主要介紹了Angular2使用Angular-CLI快速搭建工程(二),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-05-05詳細(xì)解讀AngularJS中的表單驗(yàn)證編程
這篇文章主要介紹了詳細(xì)解讀AngularJS中的表單驗(yàn)證編程,AngularJS是一個(gè)非常熱門的JavaScript庫(kù),需要的朋友可以參考下2015-06-06AngularJS進(jìn)行性能調(diào)優(yōu)的7個(gè)建議
AnglarJS作為一款優(yōu)秀的Web框架,可大大簡(jiǎn)化前端開(kāi)發(fā)的負(fù)擔(dān)。本文給大家介紹AngularJS進(jìn)行性能調(diào)優(yōu)的7個(gè)建議,涉及到angularjs性能調(diào)優(yōu)相關(guān)知識(shí),對(duì)本文感興趣的朋友一起學(xué)習(xí)吧2015-12-12詳解Angular2學(xué)習(xí)筆記之Html屬性綁定
本篇文章主要介紹了詳解Angular2學(xué)習(xí)筆記之Html屬性綁定,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-01-01使用AngularJS來(lái)實(shí)現(xiàn)HTML頁(yè)面嵌套的方法
這篇文章主要介紹了使用AngularJS來(lái)實(shí)現(xiàn)HTML頁(yè)面嵌套的方法,主要用到了AngularJS中的ng-include指令,需要的朋友可以參考下2015-06-06