2013-11-20 9 views
5

AngularJSを使用してjQueryに似たグローバルヘッダを作成するにはどうすればよいですか?このようなAngularJSポストのグローバルヘッダ

何か:

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

は今、私はこれをやって:

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

読み出し部ドキュメントにヘッダの設定 – charlietfl

答えて

12

うわー...それはちょうど私の顔の前にありました!

「設定ヘッダー」のセクションを@charlietflと読みました。これは本当に簡単です。

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

HTTPヘッダ$ HTTPサービスが自動的にすべての要求に一定の HTTPヘッダが追加されますを設定します。これらの構成オブジェクトからプロパティ を追加または削除するだけで、これらのデフォルトを追加したり、上書きする

:これらのデフォルトは、完全には現在、このデフォルトの設定が含まれています$ httpProvider.defaults.headers構成オブジェクト、 にアクセスして を設定することができます。 POSTメソッドやPUTメソッド以外のHTTPメソッド のヘッダーを追加するには、HTTPメソッド名の小文字の をキーとして新しいオブジェクトを追加するだけです。

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

サンプルコード

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() }; 
}); 
関連する問題