Содержимое запроса с httpclient на WebApi меняется между клиентом и сервером

Я работаю над решением для аутентификации запросов WebApi с помощью HMAc (аналогично этому)

Частично это просматривает содержимое исходящих запросов и генерирует его хэш MD5 (это включается как часть общего хэша сообщения).

В одном конкретном случае (запрос GET) в моих исходящих запросах значение .Content равно null.

Однако, когда он достигает обработчика на стороне сервера, в .Content есть значение

Если я сделаю .ReadAsStringAsync() для request.Content, поступающего в обработчик, я вижу, что теперь он выглядит так:

Id = 1, Status = RanToCompletion, Method = "{null}", Result = ""
AsyncState: null
CancellationPending: false
CreationOptions: None
Exception: null
Id: 1
Result: ""
Status: RanToCompletion

Который при создании хэша содержимого MD5 явно не соответствует моему исходящему запросу.

Есть идеи, откуда взялся "контент"?
Могу ли я предотвратить его создание?

EDIT Похоже, это происходит только с запросами GET.


person Alex    schedule 25.09.2013    source источник


Ответы (1)


Мне это кажется выводом Task.ToString(). Вы должны смотреть на результат задачи. Либо подождите, либо получите доступ к .Result.

person TheESJ    schedule 26.09.2013