我试图将一些SSL / TLS合并到一些Windows套接字中。我找不到任何好的例子,所以我现在正在研究WinHTTP API。
我想知道这是否可以像传统的socket send()和recv()功能一样使用?我在这里找到了一些Windows代码示例:
https://github.com/Microsoft/Windows-classic-samples/blob/master/Samples/WinhttpWebsocket/cpp/WinhttpWebsocket.cpp
我编译了它并使用nc进行了测试,我将HTTP Headers打印到命令提示符。我不需要任何这些标题,因为我想创建自己的协议并发送我自己的数据。是否可以不使用这些标头,不使用任何类型的GET / POST关键字,只是将其视为正常的套接字操作?
或者我应该在其他地方寻找?我不想使用OpenSSL或任何第三方库。
WinHTTP是作为轻量级HTTP库开发的,用于替换服务应用程序中的WinINet。它基本上是WinINet,没有FTP / Gopher支持,也没有用户首选项。
我怀疑WinHTTP允许您执行不基于HTTP协议的连接,您需要转到像SChannel这样的较低层。 SChannel支持SSL和TLS。
Windows SDK used to have a SSPI example。