angular http服務詳解

2022-07-30 19:24:11 字數 2030 閱讀 8297

它是對原生xmlhttprequest物件的簡單封裝,

這個方法會返回乙個promise物件,具有sccess和error兩個方法。

當然,我們也可以在響應返回時用then 方法來處理,會得到乙個特殊的引數,代表了物件的成功或失敗資訊,

或者可以使用success和error**  代替。

當我們把$http當成函式來使用時即$http(),需要傳入乙個物件,這個物件可以包含以下鍵 :

1、method 字串  表示傳送的請求型別 get post jsonp等等  

2、url 字串 絕對或者相對的url,請求的目標  

3、params 字串或物件 會被轉化成查詢字串加到url後面,如果不是字串會被json序列化  

4、data 字串或者物件 這個物件包含了被當做訊息體傳送給伺服器的資料,一般在post請求中使用,並且從angular1.3開始可以在post請求裡傳送二進位制資料  

如var blob = new blob(); $http();  

5、headers 物件 在我們做post跨域和後台配合的時候就用到了headers,其代表隨請求傳送的http頭字串  

6、xsrfheadername 字串 儲存xsfr令牌的http頭的名稱  

7、xsrfcookiename  字串 儲存xsfr令牌的cookie的名稱  

8、transformrequest 函式或函式組 用來對http請求頭和體資訊進行轉換,並返回轉化後的版本,通常用於在請求傳送給伺服器之前對其序列化  

9、transformresponse 函式或函式組 用來http響應頭和響應體資訊進行轉換,並返回轉化後的版本,通常用來反序列化  

10、cache 布林或快取物件 如果設定為true angularjs會用預設的$http快取對get請求進行快取  

11、timout 數值或者promise物件,如果為數值那麼請求會在指定的毫秒後結束(會跳到失敗的error方法裡) ,如果為物件那麼promise物件在被resolve時請求會被中止,方法執行完畢再執行請求  

12、responsetype 字串 該選項會在請求中設定xmlhttpresponsetype屬性有以下型別: 

「」字串預設,」arraybuffer」(arraybuffer),」blob」(blob物件),「document」(http文件),」json「(從json物件解析出來的json字串),

」text「(字串),」moz-blob「(firefox的接收進度事件),」moz-chunked-text「(文字流),」moz-chunked-arraybuffer」(arraybuffer流) 

$http提供了一些快捷方法讓我們使用,一共有六個(其實是六種請求模式)  

1、$http.get(url字串,config可選的配置-物件型別) 返回httppromise物件  

2、$http.delete(url字串,config可選的配置-物件型別) 返回httppromise物件  

3、$http.head(url字串,config可選的配置-物件型別) 返回httppromise物件  

4、$http.jsonp(url字串,config可選的配置-物件型別) 返回httppromise物件  

5、$http.post(url字串,data物件或字串,config可選的配置-物件型別) 返回httppromise物件  

6、$http.put(url字串,data物件或字串,config可選的配置-物件型別) 返回httppromise物件 

通過angular $http post提交data資料與jquery的$.ajax()區別:

說明:request的body部分的資料編碼格式由header部分的content-type指定;

angular http配置屬性

http請求的配置物件 http 接受的配置物件可以包含以下屬性 method http請求方式,可以為get,delete,head,jsonp,post,put url 字串,請求的目標 params 字串或者物件,會被轉換成為查詢字串追加的url後面 data 在傳送post請求時使用,作為訊...

oracle服務詳解

成功安裝oracle 11g資料庫後,你會發現自己電腦執行速度會變慢,配置較低的電腦甚至出現非常卡的狀況,通過禁止非必須開啟的oracle服務可以提公升電腦的執行速度。那麼,具體該怎麼做呢?按照win7 64位環境下oracle 11g r2安裝詳解中的方法成功安裝oracle 11g後,共有7個服...

Ubuntu服務詳解

liunx作業系統跟windos xp一樣,有一批系統服務隨機而啟動 略懂電腦的windows xp使用者會禁止那些不必要的服務,以提高開機速度 如今安裝了ubuntu作業系統,咱們也有必要了解ubuntu的服務,然後根據自己的需要,將不必要的服務禁止掉,這樣既可以提高ubuntu的啟動速度,還能夠...