当前位置: 首页 > 知识库问答 >
问题:

如何在Windows Phone8中发送HttpClient请求中的Post正文?

锺高翰
2023-03-14

我已经写了下面的代码发送头,张贴参数。问题是我使用的是SendAsync,因为我的请求可以是GET或POST。我如何将POST Body添加到这个peice代码中,这样,如果有任何POST Body数据,它就会被添加到我发出的请求中,如果它是简单的GET或POST而没有Body,它就会以这种方式发送请求。请更新以下代码:

HttpClient client = new HttpClient();

// Add a new Request Message
HttpRequestMessage requestMessage = new HttpRequestMessage(RequestHTTPMethod, ToString());

// Add our custom headers
if (RequestHeader != null)
{
    foreach (var item in RequestHeader)
    {

        requestMessage.Headers.Add(item.Key, item.Value);

    }
}

// Add request body


// Send the request to the server
HttpResponseMessage response = await client.SendAsync(requestMessage);

// Get the response
responseString = await response.Content.ReadAsStringAsync();

共有1个答案

艾嘉石
2023-03-14

这取决于你有什么内容。您需要使用新的HttpContent初始化RequestMessage.Content属性。例如:

...
// Add request body
if (isPostRequest)
{
    requestMessage.Content = new ByteArrayContent(content);
}
...

其中content是编码的内容。您还应该包含正确的内容类型头。

哦,它可以更好(从这个答案):

requestMessage.Content = new StringContent("{\"name\":\"John Doe\",\"age\":33}", Encoding.UTF8, "application/json");
 类似资料:
  • 问题内容: 我试图弄清楚如何通过使用HTTPClient从Android发布JSON。我试图解决这一问题已有一段时间,我在网上找到了很多示例,但我无法使用其中的任何示例。我认为这是因为我总体上缺乏JSON /网络知识。我知道那里有很多示例,但是有人可以指出我的实际教程吗?我正在寻找包含代码的逐步过程,并解释为什么您执行每个步骤或该步骤执行的操作。不需要很复杂,简单就足够了。 再说一次,我知道那里有

  • 问题内容: 我正在尝试发出POST请求,但无法完成。另一端什么也没收到。 这是应该如何工作的吗?我知道该功能,但我想我不能使用它,因为它不能用测试,对吗? 问题答案: 您基本上有正确的想法,只是发送错误的表格。该表格属于请求的正文。

  • 问题内容: 我想从Java代码登录到应用程序。这是我的代码… 但我无法登录,它只返回登录页面。 如果有人可以,请帮助我了解我在做什么错。 问题答案: 错误 :-( www-form 中间有多余的空格) 正确

  • 我最近开始在我的android应用程序中使用改装,这是我添加用户的改装请求: 这里User是我想在服务器上注册的用户的模型类。问题是服务器需要Base64.encode()格式的json正文请求。有没有办法使用改装发送Base64编码数据? 我可以想到手动这样做: 然后在请求中传递这个。但是,我必须手动完成这项工作,并处理每个POST请求。有没有更干净的方法。

  • 我在网上找到了这个脚本: 但我不明白如何与PHP一起使用它,也不明白params变量内部的内容是什么,也不明白如何使用它。我能帮个忙吗?