AngularJS入門教程之與服務(wù)器(Ajax)交互操作示例【附完整demo源碼下載】
本文實例講述了AngularJS與服務(wù)器Ajax交互操作。分享給大家供大家參考,具體如下:
AngularJS從Web服務(wù)器請求資源都是通過Ajax來完成,所有的操作封裝在$http服務(wù)中,$http服務(wù)是只能接收一個參數(shù)的函數(shù),這個參數(shù)是一個對象,用來完成HTTP請求的一些配置,函數(shù)返回一個對象,具有success和error兩個方法。
用法如下:
$http({method:'post',url:'loginAction.do' }).success(function(data,status,headers,config){ //正常響應(yīng)回調(diào) }).error(function(data,status,headers,config){ //錯誤響應(yīng)回調(diào) });
狀態(tài)碼在200-299之間,會認(rèn)為響應(yīng)是成功的,success方法會被調(diào)用,第一個參數(shù)data為服務(wù)器端返回的數(shù)據(jù),status為響應(yīng)狀態(tài)碼。后面兩個參數(shù)不常用,這里不做介紹。有興趣的朋友請參考AngularJs API文檔。
除此之外$http服務(wù)提供了一些快捷方法,這些方法簡化了復(fù)雜的配置,只需要提供URL即可。比如對于post請求我們可以寫成下面這個樣子:
$http.post("loginAction.do") .success(function(data,status,headers,config){ //正常響應(yīng)回調(diào) }).error(function(data,status,headers,config){ //錯誤響應(yīng)回調(diào) });
下面來看一個案例:
<!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()">請求</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>
點擊”請求”按鈕,我們通過$http服務(wù)以get方式向服務(wù)器請求數(shù)據(jù),服務(wù)器響應(yīng)數(shù)據(jù)格式通常為一段Json,這里我們用一個文本文件代替,person.json內(nèi)容如下:
{"name":"Rongbo_J","age":"23"}
返回的數(shù)據(jù)會放在data參數(shù)中,我們可以獲取服務(wù)器響應(yīng)的內(nèi)容將數(shù)據(jù)在視圖中展示出來。
完整demo實例代碼點擊此處本站下載。
希望本文所述對大家AngularJS程序設(shè)計有所幫助。
相關(guān)文章
angular4中*ngFor不能對返回來的對象進行循環(huán)的解決方法
今天小編就為大家分享一篇angular4中*ngFor不能對返回來的對象進行循環(huán)的解決方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-09-09AngularJs用戶登錄問題處理(交互及驗證、阻止FQ處理)
這篇文章主要為大家詳細(xì)介紹了AngularJs用戶登錄問題處理,包括交互及驗證、阻止FQ處理,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-10-10Angular2使用Angular-CLI快速搭建工程(二)
這篇文章主要介紹了Angular2使用Angular-CLI快速搭建工程(二),具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-05-05AngularJS進行性能調(diào)優(yōu)的7個建議
AnglarJS作為一款優(yōu)秀的Web框架,可大大簡化前端開發(fā)的負(fù)擔(dān)。本文給大家介紹AngularJS進行性能調(diào)優(yōu)的7個建議,涉及到angularjs性能調(diào)優(yōu)相關(guān)知識,對本文感興趣的朋友一起學(xué)習(xí)吧2015-12-12詳解Angular2學(xué)習(xí)筆記之Html屬性綁定
本篇文章主要介紹了詳解Angular2學(xué)習(xí)筆記之Html屬性綁定,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-01-01使用AngularJS來實現(xiàn)HTML頁面嵌套的方法
這篇文章主要介紹了使用AngularJS來實現(xiàn)HTML頁面嵌套的方法,主要用到了AngularJS中的ng-include指令,需要的朋友可以參考下2015-06-06