WebAPI 2 и параметры публикации в теле, переданные как нулевые

У меня есть метод контроллера webapi2, как показано ниже:

[Route("shipment/{shipmentId:long}/quotes/register")]
public HttpResponseMessage ProvideQuote(long shipmentId, [FromBody]RegisterQuote quote)
{
    HttpResponseMessage response;
    response = Request.CreateResponse(HttpStatusCode.Accepted, String.Format("quote of price {0} for shipment {1} has been registred", quote.QuotePrice, shipmentId));
    return response;
}

теперь проблема в том, что когда я тестирую метод с помощью своего REST-клиента, quote всегда имеет значение null.

вот как я тестирую введите здесь описание изображения

параметр введите здесь описание изображения

теперь я получаю ответ: введите здесь описание изображения

как вы можете видеть, параметр строки запроса передается правильно, но параметр body не передается. любая идея, что я делаю неправильно.

Редактировать 1:

Заголовок запроса:

User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.114 Safari/537.36
Origin: chrome-extension://hgmloofddffdnphfgcellkdfbfbjeloo
Authorization: Bearer Hhz54k1BLyPMJxucSeq4pLwhS3Y4Ez5WCoEMzhe-uH7gHMFMRjHE2Im9juinMLhqaHVZmkVrWetEiCsYbaduzLas7rYf-D3p40lH_q3IDEn2rdt122qpiHvnUr7Cz2b6GXiPYLGDMQFOMN0lbkYmoZe95sxXDRvDfpdJw4G2Fk3Ri1A25F3qAZCnBhjA-BLoL-2eAjxX-RPCGAXjaNLjT4zsxRJH8NP5qC7azPrWCDKRuK282hnTbKViQjMBDflwlxdPhTNkiCBtxWn03xRcxH9GD1z5Ca0Qinn5gUS7qWwCt9zoZtHcbwFY1kvxyx7x5yCuyEfrGHgKG1s7zjTPjNwU0eV7cC6xQA2GsOAnqADxMDyRryCRKLY7WcyQftRhZ70WbtSW2PI0F7qmDr8n0wvktmKglusLEDf4ib925n-ajVTyMl7v9O-9OsdgCj_GSNE6_bszd3Ak1yUurs-VoQ
Content-Type: application/x-www-form-urlencoded 
Accept: */*
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8,kn;q=0.6

Кстати, я не уверен, что случилось со всеми моими изображениями!

С уважением Киран


person Kiran    schedule 07.06.2014    source источник
comment
Можете ли вы поделиться, как выглядят заголовки ваших запросов?   -  person Kiran Challa    schedule 08.06.2014
comment
@KiranChalla: я обновил заголовок запроса   -  person Kiran    schedule 08.06.2014


Ответы (1)


Проблема здесь в том, что вы отправляете содержимое Json в теле, но имеете заголовок типа содержимого как application/x-www-form-urlencoded... измените заголовок типа содержимого на application/json или text/json, если хотите отправить данные в формате json...

person Kiran Challa    schedule 08.06.2014