Мне поручено интегрироваться с API Amazon Gift Codes On Demand (AGCOD) RESTful. Мы обязаны подписывать наши запросы, используя Signature Version 4, что-то, что выполняется их AWS SDK for .NET для других услуг, но не AGCOD.Осмотреть HttpRequestMessage перед отправкой
Я использую класс HttpClient из пространства имен System.Net.Http для связи с API AWS. Это, в свою очередь, использует HttpClientHandler для создания HttpRequestMessage. При этом к сообщению добавляются дополнительные заголовки, такие как Host
, Content-Length
и Connection
.
Мой вопрос в том, как я могу осмотреть сообщение после того, как я позвонил PostAsync, и заголовки были добавлены, но прежде чем он будет отправлен на сервер, чтобы я мог вычислить и добавить подпись?
Я мог бы просто просто указать эти заголовки самостоятельно. Но это помогает только известным заголовкам. Если используется другой HttpMessageHandler (например, WebRequestHandler), то могут быть добавлены различные заголовки (например, Content-Encoding
и Cache-Control
). Если я не знаю обо всех заголовках сообщения, я не смогу вычислить правильную подпись.
Спасибо, Майкл, это переместило меня вперед, так счастлив принять это как ответ. –