2013-11-20 17 views
5

Làm cách nào để tạo một tiêu đề chung tương tự như jQuery bằng AngularJS?Tiêu đề chung cho AngularJS post

Something như thế này:

$.ajaxSetup({ 
    beforeSend: function (xhr) { 
     xhr.setRequestHeader('Requested-With', 'XMLHttpRequest'); 
     xhr.setRequestHeader('__RequestVerificationToken', 'abc123'); 
    } 
}); 

Ngay bây giờ tôi làm điều này:

$http({ 
    url: 'mysite.com/', 
    method: 'POST', 
    data: 'data', 
    headers: {'Content-Type': 'application/x-www-form-urlencoded'} 
}) 
+2

phần đọc Thiết Headers trong tài liệu – charlietfl

Trả lời

12

Wow ... Đó là ngay trước mặt tôi!

Đọc phần "Cài đặt tiêu đề" như @charlietfl đã nói ... nó thực sự đơn giản.

http://docs.angularjs.org/api/ng.$http

Thiết HTTP Headers Các dịch vụ $ http sẽ tự động thêm một số tiêu đề HTTP cho tất cả các yêu cầu. Những giá trị mặc định có thể được cấu hình đầy đủ bằng cách truy cập các đối tượng cấu hình $ httpProvider.defaults.headers, hiện chứa cấu hình mặc định này:

Để thêm hoặc ghi đè lên các giá trị mặc định, chỉ cần thêm hoặc loại bỏ một tài sản từ các đối tượng cấu hình. Để thêm tiêu đề cho phương thức HTTP ngoài POST hoặc PUT, chỉ cần thêm một đối tượng mới có tên phương thức HTTP thấp hơn làm khóa, ví dụ:

$httpProvider.defaults.headers.post = { 'My-Header' : 'value' } 

Ví dụ Mã

var app = angular.module('app', ['app.controller', 'app.service']); 

app.config(function ($httpProvider) { 
    $httpProvider.defaults.headers.post = { "X-Requested-With": "XMLHttpRequest", "__RequestVerificationToken": $('[name=__RequestVerificationToken]').val() }; 
}); 
Các vấn đề liên quan