Ну, я не знаю, как я это пропустил, решение было чрезвычайно простым, .json()
возвращает Promise
, поэтому мы можем просто вызвать .then
для него внутри текущего контекста и делать то, что мы хотим, с заголовки и тело ответа:
fetch('/url')
.then(response => response.json().then(json => ({...json, token: response.header.get('TOKEN')})))
.then(json => props.updateUser(json));
Таким образом мы можем получить желаемый объект, который содержит значения заголовка, а также данные ответа. Иногда все, что вам нужно для решения вашей проблемы, - это немного поспать.