Cache de gateway de API vs CloudFront

Estou um pouco confuso com o modo como o API Gateway e o CloudFront funcionam juntos. Por fim, desejo que um cabeçalho e um valor personalizados sejam considerados parte da minha chave de cache. Sei que isso pode ser feito pela lista de permissões (se estiver usando o CloudFront).

Então, quando eu faço a seguinte solicitação:

GET / pagesRead / 4 Algum cabeçalho: fizz

Isso retorna, por exemplo, '29 páginas '

Depois, há uma postagem que atualiza o ID 4 para '45 páginas '

Se eu fizer esse pedido

GET / pagesRead / 4 Algum cabeçalho: buzz

Agora ele retornará '45 páginas '

Mas estou usando o API Gateway, que obviamente possui seu próprio CloudFront nos bastidores. Existe uma maneira de configurar o API Gateway para usar o CloudFront 'nos bastidores' para colocar na lista branca meu cabeçalho personalizado? Isso ainda precisa ser feito?

De acordo com esta documentação:https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html, parece que posso apenas ativar o cache da API no API Gateway e ele considerará meus cabeçalhos como parte da chave do cache.

Estou entendendo isso corretamente? Se tudo o que eu quero é que meus cabeçalhos façam parte da chave do cache, qual é a diferença entre 'Habilitando o cache de API' no API Gateway e adicionando uma instância do CloudFront no topo do API Gateway e a lista de permissões no CloudFront?

ATUALIZAR:

Adicionei um cabeçalho como este no API Gateway:

Mas no GET, estou recebendo dados obsoletos do cache.

GET / pagesRead / 4 cabeçalho de teste: buzz

questionAnswers(2)

yourAnswerToTheQuestion