【发布时间】:2009-07-21 03:33:40
【问题描述】:
我目前对 HTTP 请求使用简单的 winsock 解决方案(WSAStartup、socket、connect、send、recv、closesocket)来获得我们自己的服务器的 32 字节响应。
切换到 WinHTTP 或其他库是否存在性能或安全原因?
【问题讨论】:
标签: c winapi httprequest
我目前对 HTTP 请求使用简单的 winsock 解决方案(WSAStartup、socket、connect、send、recv、closesocket)来获得我们自己的服务器的 32 字节响应。
切换到 WinHTTP 或其他库是否存在性能或安全原因?
【问题讨论】:
标签: c winapi httprequest
易于使用、经过全面测试、功能丰富、错误检查等。我能想到的唯一安全原因是,如果您自己操作并且经验不足,您可能会让自己面临缓冲区溢出或其他类似问题漏洞利用。根据您的能力,第 3 方库可能会更高效,因此也更快。
除非您对自己的能力有足够的信心,否则我建议您使用 3rd 方库。
【讨论】:
WinHTTP 库为 HTTP 协议提供了更多功能,而不仅仅是使用套接字。例如,它提供了有效的 HTTP 请求方法(GET、POST、PUT 等)供您轻松使用,而无需自己通过 HTTP 协议。
【讨论】:
便携性也是一个因素。此外,其他库的 API 比 Winsock 的要好得多。
【讨论】: