c# - 如何在 .NET 中处理 HTTP 连接?

标签 c# .net http ssl tcp

我想在非常低的级别上处理 HTTP - 目前我被 HTTP CONNECT 动词困住了。看起来 HttpListener 无权访问这些请求,因为它们是在 HTTP API 或 HTTP.SYS 中的某个地方处理的。我能够使用 native TcpListener 处理此类请求,但在这种情况下,我将失去所有 HTTP 功能 = 我将从头开始实现 HTTP。

我还检查了 FiddlerCore,但它也在某些 Win API 层上处理这些请求。是否有任何纯 .NET HTTP 堆栈?

编辑:我正在使用 HTTP 代理进行一些额外的请求分析和统计,所以我不想丢失 HTTP 解析,同时我想了解 SSL 连接。

最佳答案

使用 Tcp* 和 Socket*,而不是 Http* 相关类以在 .NET 中使用真正低级别。

TCP位于HTTP协议(protocol)栈的最底层。

如果需要,请使用 TCP 套接字,只需使用“winsock2.dll”互操作调用形式的 c#,以及所有相关的东西,如结构定义等,或者使用 native C++

关于c# - 如何在 .NET 中处理 HTTP 连接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7431280/

相关文章:

c# - 如何通过代码获取Page Access Token?

.net - 限制 .NET 中多字节字符的 URL 编码字符串的长度

c++ - 如何从C++/CLI代码调用C++代码?

c# - ASP.NET/WCF : Why are logical/physical threads dropping on full GC cycle?

c# - 无法设置 AuthenticationHeaderValue

c# - GetScaleFactorForMonitor 值与应用的实际比例不匹配

android - HTTP url 连接安卓

c - C语言向服务器发送HTTP请求后什么也没有收到

android - Android HTTP POST 问题

c# - Silverlight 4 平铺背景