选择 WinHTTP 接口

在开始开发Microsoft Windows HTTP 服务(WinHTTP)应用程序之前,必须先决定是否使用 C/C++ API 或 COM 接口。 下表总结了与上述每个方法相关的优点和缺点。

优点或缺点 C/C++ API COM 接口
优势
  • 可以在区块中处理响应,这更高效。
  • POST操作还可以分块处理,加快处理时间。
  • AutoProxy 支持。
  • 访问 WinHTTP 的完整功能集。
  • 可以轻松处理二进制数据。
  • 创建应用程序非常简单,并且所需的代码行数少于 C/C++ API。
  • 该接口可由脚本语言使用。
缺点
  • 处理更为复杂。
  • C/C++ API 需要比 COM 接口更多的步骤来执行相同的作。
  • 设置请求需要更多代码。
  • COM 接口不提供对 WinHTTP 完整功能集的访问权限。
  • 在某些脚本语言(如 VBScript 和 JScript)中,很难处理二进制数据类型。
  • COM 接口不支持 AutoProxy。
  • 应用程序必须使用 COM APARTMENT_THREADED 模型。
  • 必须先接收和缓冲整个响应,然后才能开始处理响应。