text/html vs application/x -www -form -urlencoded и FormUrlEncodedMediaTypeFormatter

На запрос POST я получил ответ в формате text/html , а тело ответа содержало следующую информацию:

oauth_token=XXXXXXXXXXXXXXXXXXXXXXXXX&oauth_token_secret=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&oauth_callback_confirmed=true

Я сделал этот запрос через System.Net.Http.HttpClientи я мог прочитать ответ с FormUrlEncodedMediaTypeFormatterкак FormDataCollection, но оказалось, что FormUrlEncodedMediaTypeFormatterподдерживает только форму application/x -www --. ] urlencoded формат по умолчанию. Так,Я работал над этим с помощью следующего кода:

using (OAuthHttpClient client = new OAuthHttpClient(creds)) {

    var response = await client.PostAsync(requestUri, new EmptyContent());
    var formatter = new FormUrlEncodedMediaTypeFormatter();
    formatter.SupportedMediaTypes.Add(new MediaTypeHeaderValue("text/html"));
    var result = await response.Content.ReadAsAsync<FormDataCollection>(new List<MediaTypeFormatter>() { formatter });

}

Вопрос здесь:

Является ли поставщик ответа (в данном случае Твиттером ), который делает это неправильно, отправляя этот ответ как text/html или должен FormUrlEncodedMediaTypeFormatterподдерживать тип text/html по По умолчанию?

0
задан tugberk 29 July 2012 в 14:23
поделиться