AngularJS(八):http服務

來源:互聯網
上載者:User

標籤:實現   擷取   應用   16px   ajax   data   web   cti   不能   

本文也同步發表在我的公眾號“我的天空

 

 

 http服務

 

之前我們的樣本都是在本地擷取類比資料,在實際應用中,所有的項目都將不可避免的從後台擷取資料,我們都是通過Ajax來實現與伺服器的通訊。在AngularJS中,我們使用http服務來實現與背景資料互動,http服務的使用請看以下代碼:

 

    var app=angular.module("myApp",[]);
    app.controller("person",function($scope,$http){
        $http.get(‘http://test.php‘)
       .success(function(data){
           //載入成功後的處理,data為返回的資料
       }).error(function(data){
           //載入失敗後的處理,data為返回的資料
       })
     });

 

在以上代碼中,我們在控制器代碼中添加了$http模組,這樣便可以使用http服務了,我們採取get的方式訪問了一個url,隨後在success()與error函數中分別針對載入成功或失敗做相應的處理。測試http服務時請注意,所請求的url必須是在web服務上的,而不能在本地測試。如果要向後台傳遞參數,則應該添加params參數,如下:

 

$http.get(‘http://test.php‘,{params:{id:‘5‘,name:‘張三‘}
    }) .success(function(data){
           ......
    }).error(function(data){
           ......
     })

 

在以上代碼中,我們添加了兩個傳遞到背景參數,分別是id和name,其值分別是“5”與“張三”。

 

如果要使用POST方式與後台通訊,則應使用$http.post()方法,要注意的是params參數應該放在第三個參數位置,如下:

 

$http.post(‘http://test.php‘,‘‘,{params:{id:‘5‘,name:‘張三‘}})


通常,我們會給請求傳遞一個設定物件,以便靈活的對請求進行配置,其調用形式如下:$http(config),config為一個對象,可對其佈建要求方式(get/post)、請求的url、傳遞參數、逾時時間等。如以上的樣本可寫成如下代碼:

 

$http({
    method:‘post‘,
    url:‘http://test.php‘,
    params:{id:5,name:‘張三‘}
   }).success(function(data){
        ......
   }).error(function(data){
       ......
  })

 

對於config的更多配置參數,可以查閱AngularJS相關文檔。

AngularJS(八):http服務

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.