2016-03-10 4 views
0

Я действительно застрял отправить запрос POST по HttpClient с параметрами:HTTPClient POST с параметрами

private async Task<string> PostAsync(string parameterValue) 
    { 
     var ResponseMessage = await HttpClient.PostAsyncAsync(myUri, new FormUrlEncodedContent(
      new[] 
      { 
       new KeyValuePair<string, string>("parameter", parameterValue) 

Благодарности - })); var httpResponse = ожидание Deserialize (ResponseMessage);

 return Response.Token; 
    } 

Что я получаю POST https://URI с параметрами содержания HTTP/1.1 и что мне нужно https://URI?parameter=PARAMETERVALUE HTTP/1.1

Может кто-нибудь мне помочь?

EDIT:

Спасибо - это просто как:

private async Task<string> PostAsync(string parameterValue) 
    { 
     var ResponseMessage = await HttpClient.PostAsyncAsync(string.Format(myUri?parameter={0}, parameterValue), null) 
+0

POST не передает значения в URL-адресе. Вам нужно будет использовать GET, если вы хотите, чтобы ваши параметры в URL-адресе. –

+0

Я знаю, но в этом случае мне нужно передать переменные с POST – Tom

ответ

1

Метод, который вы используете, берет все во втором параметре и использует его для HttpContent. Вы можете прочитать больше here. То, что вы должны делать, - это добавление параметров в переменную myUri.

0

Вы не должны быть передачи значений в URL, это, вероятно, переходит в закодированном секции тела (доступный через запрос потока HttpWebRequest). Я бы предложил такой инструмент, как Fiddler, чтобы проанализировать тип запроса POST, который вы пытаетесь сделать, чтобы вы знали, какие данные должны поступать в тело, тип кодирования, протоколы и т. Д.

+0

Я проанализировал его с помощью Fiddler, и мне нужно передать переменные с помощью POST. Я знаю, что это не стандарт. – Tom

+0

Да, странная просьба. Вы должны попробовать [этот плагин Fiddler] (https://www.chadsowald.com/software/fiddler-extension-request-to-code) и посмотреть, поможет ли это :) –

+0

Если я отправлю запрос GET с параметром, который я получаю 404. Хороший плагин! Я дам ему попробовать! – Tom

Смежные вопросы