Добавление пользовательского заголовка в HTTP-запрос с помощью angular.js

Я новичок в angular.js и пытаюсь добавить несколько заголовков к запросу:

   var config = {headers: {
            'Authorization': 'Basic d2VudHdvcnRobWFuOkNoYW5nZV9tZQ==',
            'Accept': 'application/json;odata=verbose'
        }
    };

   $http.get('https://www.example.com/ApplicationData.svc/Malls(1)/Retailers', config).success(successCallback).error(errorCallback);

Я просмотрел всю документацию, и мне кажется, что это должно быть правильно.

Когда я использую локальный файл для URL в$http.getЯ вижу следующий HTTP-запрос на вкладке сети в Chrome:

GET /app/data/offers.json HTTP/1.1
Host: www.example.com
Connection: keep-alive
Cache-Control: max-age=0
If-None-Match: "0f0abc9026855b5938797878a03e6889"
Authorization: Basic Y2hhZHN0b25lbWFuOkNoYW5nZV9tZQ==
Accept: application/json;odata=verbose
X-Requested-With: XMLHttpRequest
If-Modified-Since: Sun, 24 Mar 2013 15:58:55 GMT
User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22
X-Testing: Testing
Referer: http://www.example.com/app/index.html
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3

Как видите, оба заголовка были добавлены правильно. Но когда я изменяю URL на тот, который показан в$http.get выше (кроме использования реального адреса, а не example.com), тогда я получаю:

OPTIONS /ApplicationData.svc/Malls(1) HTTP/1.1
Host: www.datahost.net
Connection: keep-alive
Access-Control-Request-Method: GET
Origin: http://mpon.site44.com
User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22
Access-Control-Request-Headers: accept, origin, x-requested-with, authorization, x-testing
Accept: */*
Referer: http://mpon.site44.com/app/index.html
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3

Единственное различие в коде между этими двумя заключается в том, что для первого URL-адрес является локальным файлом, а для второго URL-адрес является удаленным сервером. Если вы посмотрите на второй заголовок запроса, там нет заголовка аутентификации, иAccept кажется, что используется значение по умолчанию вместо указанного. Кроме того, первая строка теперь говоритOPTIONS вместоGET (хотяAccess-Control-Request-Method являетсяGET).

Любая идея, что не так с приведенным выше кодом, или как получить дополнительные заголовки, используя, когда не используется локальный файл в качестве источника данных?

Ответы на вопрос(8)

Ваш ответ на вопрос