C++使用WinHTTP访问http/https服务(转)

环境: window10_x64 & vs2022

python版本: 3.9.13

日常开发中,会遇到c/c++作为客户端访问http/https服务的情况,今天整理下windows10环境下c/c++使用winhttp访问http/https服务的笔记,并提供相关资源下载。

我将从以下几个方面展开:

  • http服务构建
  • https证书生成及服务构建
  • winhttp使用示例
  • 资源下载

一、模拟http服务端

1、构建http服务

这里使用tornado来构建http服务。

示例代码(httpServer1.py):

#! /usr/bin/env python3
#-*- coding:utf-8 -*- 
import tornado.ioloop
import tornado.web
import tornado.httpserver
import json,time,datetime
settings = {
    "debug" : False ,    
}
def trace(reqType,reqBody):
    msg = str(datetime.datetime.now()) + " , [" + reqType + "] , " + str(reqBody)
    print(msg)
class MainHandler(tornado.web.RequestHandler):
    def get(self):
        trace("get",self.request.arguments)
        #query = self.get_query_argument("query")
        #print("query : %s" % query)
        self.set_header('content-type', 'application/json')
        #self.write(json.dumps({"result" : "test message"}))
        self.finish(json.dumps({"result" : "get message"}))
    def put(self):
        trace("put",self.request.body)
        self.finish(json.dumps({"result" : "put message"}))

    def post(self):
        #trace("post",self.request.arguments)
        trace("post",self.request.body)
        self.set_header('Content-type', 'application/json')
        #self.set_header('Transfer-Encoding', 'chunked')
        self.finish(json.dumps({"result" : "post message %d" % time.time()}))
if __name__ == "__main__":
    port = 8093
    print("listen on port %d"%port)
    application = tornado.web.Application([
        (r"/.*", MainHandler),
  
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

meslog

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值