2016-05-29 5 views
0

Мои заголовки ответа выглядеть следующим образомКак просмотреть все заголовки ответа в уголек с RESTAdapter

HTTP/1.1 200 OK 
Server: nginx/1.9.7 
Content-Type: application/json 
Transfer-Encoding: chunked 
Connection: keep-alive 
X-On-Trial: 1 
Cache-Control: no-cache 
Access-Control-Allow-Origin: http://localhost:4200 
Vary: Origin 
Date: Sun, 29 May 2016 00:37:31 GMT 

Но когда я делаю console.log (заголовков) в функции RESTAdapter handleResponse, все, что входит в

EmptyObject {Content-Type: "application/json", Cache-Control: "no-cache"} 

Как получить доступ к заголовку X-On-Trail или любым другим настраиваемым заголовкам, которые могут мне понадобиться?

Я не уверен, если это имеет значение, но я использую ember-simple-auth. Разбивает ли это заголовки?

ответ

1

Я проверяю источники. .handleResponseis called from .ajax

ajax(url, type, options) { 
    var adapter = this; 

    var requestData = { 
     url: url, 
     method: type 
    }; 

    return new Ember.RSVP.Promise(function(resolve, reject) { 
     var hash = adapter.ajaxOptions(url, type, options); 

     hash.success = function(payload, textStatus, jqXHR) { 

     let response = adapter.handleResponse(
      jqXHR.status, 
      parseResponseHeaders(jqXHR.getAllResponseHeaders()), // try to check both in debugger 
      payload, 
      requestData 
     ); 

Так просто попробуйте остановиться на parseResponseHeaders(jqXHR.getAllResponseHeaders()) линии и проверить jqXHR.getAllResponseHeaders(). Если это нормально - проверить parseResponseHeaders()

Я буду рад помочь отладить, если у вас есть общедоступная ссылка для вашего проекта или, если вы можете дать ссылку на какой-либо общественный проект с REstAdapter

О чередовании - он пропускает заголовки который не содержит двоеточие

PS> Thx для @Vlad xmlHttp.getResponseHeader + Not working for CORS

"Access-Control-Expose-Headers"

Используется в ответ на запрос предварительной проверки, чтобы указать, какие заголовки HTTP можно использовать при выполнении фактического запроса.

Access-Control-Allow-Headers: <field-name>[, <field-name>]*

+0

Спасибо за подробное объяснение. Что вы подразумеваете под словом «он пропускает заголовки, которые не содержат двоеточий»? Предполагается, что заголовки должны быть отформатированы определенным образом? – Vlad

+0

Он пропускает заголовки, у которых нет ':' (это не о вашем случае, просто для информации) –

+0

Я сделал 'console.log (jqXHR.getAllResponseHeaders())' в rest.js, и у него все еще есть только два заголовка. Любые другие идеи? – Vlad