<分区>
我正在寻找 .net 的库,它可以让我完全控制通过网络发送的内容。我打算将它用于 http 实验。我知道 c# 的 HttpWebRequest,我想尝试一些不同的东西,因为我无法控制所有 header (您是否曾尝试更改它发送的 Keep-Alive header 的大小写?)或有选择地忽略证书错误。我想试验一下这些东西。我选择的语言是 c#。
谁能推荐一个好的 http 库,它可以让我在需要时干预低级的东西,但在我不需要时不会给我带来负担?
标签 c# http httpwebrequest
<分区>
我正在寻找 .net 的库,它可以让我完全控制通过网络发送的内容。我打算将它用于 http 实验。我知道 c# 的 HttpWebRequest,我想尝试一些不同的东西,因为我无法控制所有 header (您是否曾尝试更改它发送的 Keep-Alive header 的大小写?)或有选择地忽略证书错误。我想试验一下这些东西。我选择的语言是 c#。
谁能推荐一个好的 http 库,它可以让我在需要时干预低级的东西,但在我不需要时不会给我带来负担?
最佳答案
我认为您无法击败 Microsoft 于 2 月 16 日发布的新 Web 客户端 尽管是测试版。它当然可以用于生产。您可以通过 NuGet 获取它。该包称为 System.Net.Http。
“这个包为现代 HTTP 应用程序提供了一个编程接口(interface)。这个包包括用于通过 HTTP 发送请求的 HttpClient,以及 HttpRequestMessage 和 HttpResponseMessage。”
新的 HttpWebClient 使您可以完全控制响应。您可以像这样简单地添加 header :
var response = new HttpResponseMessage<MyModel>(model, HttpStatusCode.Ok);
response.Headers.Add("test", "test");
这是对新 HttpClient 的精彩介绍,http://code.msdn.microsoft.com/Introduction-to-HttpClient-4a2d9cee .请记住,这是新 HttpWebClient。我用过老客户端,用起来真的很愉快。
有关许可的快速更新。 Web Api 及其 HttpClient 部分支持“上线”许可证,允许您使用它构建和部署生产应用程序。
更新
Microsoft 刚刚在 CodePlex 上发布了一些很棒的 HttpClient 示例,地址为 http://aspnet.codeplex.com/SourceControl/list/changesets .如果您是 HttpClient 的新手,请查看它们。
关于c# - .Net 的良好低级 http 库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9650660/