2016-09-28 2 views
0

В моем приложении все ответы сервера следующим образом:Угловая функция ответа HTTP-перехватчик удаляет сообщение из параметров от ответа сервера

response = { 
    data: {}, 
    status: STATUS_CODE, 
    message: STRING_MESSAGE 
} 

Я хочу использовать функцию углового Ответные HTTP, чтобы отобразить сообщение ответа на некоторые из моих веб-сервисов в компонент тоста. В перехватчик У меня есть простая функция отклика:

response = function (res) { 
    console.log(res); 
    return res; 
} 

который регистрирует объект ответа:

{ 
    data:{}, // object response.data 
    config: {}, 
    status: 200, 
    statusText: 'OK', 
    headers: function() 
} 

Там нет параметра сообщение, которое посылает сервер. Означает ли это, что перехватчик удаляет часть ответов на мои серверы? Одним из решений было бы перезаписать значение statusText. Я попытался изменить ответ сервера, как

response = { 
     data: {}, 
     status: STATUS_CODE, 
     statusText: STRING_MESSAGE 
    } 

, но это не сработало, я до сих пор не было его статуса: «OK» и до сих пор нет сообщений параметров в объекте ответа перехватчика

+0

Ответ сервера находится в 'data'. Это не должно быть пустым объектом или что-то не так в действительном запросе – charlietfl

+0

Отклики response.data перехватчика не пусты и совпадают с данными response.data сервера, поэтому не имеют статуса и нет атрибута сообщения. – magneto

+0

, затем проверьте фактический запрос в сети dev tools и посмотрите, что именно отправлено. Также поможет демонстрация в плункере, показывающая это. возможно, вы забыли вернуть что-то в перехватчике? недостаточно показан контекст, и это немного запутанно, как показано – charlietfl

ответ

0

собственности Проверьте данные в своем ответе перехватчика. Это может быть так:

{ 
    data:{  
     data: {}, 
     status: STATUS_CODE, 
     message: STRING_MESSAGE 
    }, // object response.data 
    config: {}, 
    status: 200, 
    statusText: 'OK', 
    headers: function() 
} 
Смежные вопросы