/*$http常用的幾個參數
$http服務的設定對象:
1、method 字元串 表示發送的請求類型 get post jsonp等等
2、url 字元串 絕對或者相對的URL,請求的目标
3、params 字元串或對象 會被轉化成查詢字元串加到URL後面,如果不是字元串會被JSON序列化
4、data 字元串或者對象 這個對象包含了被當做消息體發送給伺服器的資料,一般在POST請求中使用,并且從angular1.3開始可以在POST請求裡發送二進制資料
如var blob = new Blob({name:’張三’}); $http({method:’get’,url:’/‘,data:blob});
5、headers 對象 在我們做POST跨域和背景配合的時候就用到了headers,其代表随請求發送的HTTP頭字元串
6、cache 布爾或緩存對象 如果設定為true angularjs會用預設的$http緩存對GET請求進行緩存
7、timout 數值或者promise對象,如果為數值那麼請求會在指定的毫秒後結束(會跳到失敗的error方法裡) ,如果為對象那麼promise對象在被resolve時請求會被中止,方法執行完畢再執行請求
8、xsrfHeaderName 字元串 儲存XSFR令牌的HTTP頭的名稱
9、xsrfCookieName 字元串 儲存XSFR令牌的cookie的名稱
10、transformRequest 函數或函數組 用來對HTTP請求頭和體資訊進行轉換,并傳回轉化後的版本,通常用于在請求發送給伺服器之前對其序列化
11、transformResponse 函數或函數組 用來HTTP響應頭和響應體資訊進行轉換,并傳回轉化後的版本,通常用來反序列化
12、responseType 字元串 該選項會在請求中設定XMLHttpResponseType屬性有以下類型: “”字元串預設,”arraybuffer”(arraybuffer),”blob”(blob對象),“document”(HTTP文檔),”json“(從JSON對象解析出來的json字元串),”text“(字元串),”moz-blob“(Firefox的接收進度事件),”moz-chunked-text“(文本流),”moz-chunked-arraybuffer”(arraybuffer流)
$http服務的快捷方法
$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對象
*/
$http常用的幾個參數
// 1、$http請求方式
/**
* 請求參數說明:
*url:url, //請求的url路徑
*method:method, //GET/DELETE/HEAD/JSONP/POST/PUT
*params:params , //轉為 ?param1=xx1¶m2=xx2的形式
*data: data //包含了将被當做消息體發送給伺服器的資料,通常在POST請求時使用
*/
$http({
url:url, //請求的url路徑
method:method, //GET/DELETE/HEAD/JSONP/POST/PUT
params:params , //轉為 ?param1=xx1¶m2=xx2的形式
data: data //包含了将被當做消息體發送給伺服器的資料,通常在POST請求時使用
}).success(function(response, status, header, config, statusText){
//成功處理
// response --- 響應體,即:要請求的資料
// status --- HTTP狀态碼
// header --- 頭資訊
// config --- 用來生成原始請求的完整設定對象
// statusText --- 相應的HTTP狀态文本
}).error(function(data,header,config,status){
//錯誤處理
});
1、$http請求方式
// 2、GET方式
// $http---get請求方式--- params參數會轉為 ?param1=xx1¶m2=xx2的形式
$http({
url:"/doc.json",
method:'GET',
params:{
'username':'admin'
}
}).success(function (response, status, headers, config) {
/*成功資訊*/
}).error(function (response) {
/*失敗資訊*/
});
//快捷請求:
$http.get(url, [config])
.success(function(data){})
.error(function(data){});
2、GET方式
// 3、POST方式
$http({method : 'POST',params : { id:1}, data:{name:'admin',age:1}, url : "/doc"})
.success(function(response, status, headers, config){
/*成功資訊*/
})
.error(function(response, status, headers, config){
/*失敗資訊*/
});
// 快捷方式:
$http.post(url, $scope.formData).success(function (response, status, headers, config) {
/*成功資訊*/
}).error(function (response) {
/*失敗資訊*/
});
3、POST方式
// 4、發送jsonp請求:
// 為了發送JSONP請求,url中必須包含JSON_CALLBACK參數, jsonp(url,config) 其中config是可選的
// eg:
var promise=$http.jsonp("/api/users.json?callback=JSON_CALLBACK");
4、發送jsonp請求
// 5、$http送出表單 --- 與Spring MVC互動, 使用這種方式
// 通用方式:
$http({
method: "POST",
url: url,
headers: {'Content-Type': 'application/x-www-form-urlencoded'},
data: $.param($scope.request)
}).success(function(result){
}).error(function(result){
});
// 快捷方式:
$http.post(url, $scope.formData)
.success(function(result){
})
.error(function(result){
});
5、$http送出表單
// 6、使用$http指定的方法發送HTTP請求:
get(url, [config]);
delete(url, [config]);
post(url, data, [config]);
put(url, data, [config]);
6、使用$http指定的方法發送HTTP請求
轉載于:https://www.cnblogs.com/nelsonlei/p/9377612.html