使用.NET 2.0客户端调用Web Api服务

14
1个回答

28

如何从.NET 2.0客户端调用 Web Api 方法?

当然可以。您可以从任何符合 HTTP 标准的客户端中调用它,客户端甚至不必是.NET。

例如,在 .NET 2.0 中,您可以使用 WebClient 类:

using (var client = new WebClient())
{
    client.Headers[HttpRequestHeader.Accept] = "application/json";
    string result = client.DownloadString("http://example.com/values");
    //now use a JSON parser to parse the resulting string back to some CLR object
}

如果你想要发出一个POST请求,

using (var client = new WebClient())
{
    client.Headers[HttpRequestHeader.ContentType] = "application/json";
    client.Headers[HttpRequestHeader.Accept] = "application/json";
    var data = Encoding.UTF8.GetBytes("{\"foo\":\"bar\"}");
    byte[] result = client.UploadData("http://example.com/values", "POST", data);
    string resultContent = Encoding.UTF8.GetString(result, 0, result.Length);        
    //now use a JSON parser to parse the resulting string back to some CLR object
}

1
是的,但最终我们需要将字节响应再次转换为字符串,以显示正确的响应。 - Shekhar Patel

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接