您好!欢迎来到爱源码

爱源码

热门搜索: 抖音快手短视频下载   

Mongoose构建RESTful http/https web服务器 [网站代码]

  • 时间:2022-10-25 23:42 编辑: 来源: 阅读:318
  • 扫一扫,手机访问
摘要:Mongoose构建RESTful http/https web服务器 [网站代码]
具体过程我就不说了。猫鼬很小。只有两个文件,mongose . h/CPP,可以立即使用。另外,官方文件,包括例子,都是相当丰富的。可以从官网或者GitHub上浏览下载。挑几个相关的:a .最简单的http serverb。RESTful服务器c。最简单的https服务器d。多线程服务器其实mongoose的评论也很周到,或者说文档演示没有提到,仔细去mongoose.h基本就能搞定。下面说几个使用时的注意点:关于结构mg_serve_http_opts,是demo中事件解析回调函数常用的void mg _ serve _ http(struct mg _ connection * NC,structhttp _ message * hm,structmg _ serve _ http _ opts)。函数的主要参数决定了服务器如何响应客户端请求,包括回复内容、显示格式、权限控制等诸多选项。如有必要,可以仔细阅读结构的相关代码和注释。制作RESTful服务器API时,不可避免的要根据请求定制响应方式。这里要关注一下mongoose提供的mg_*_send_*和mg_*_printf_*的系列函数,根据实际需要酌情选择:void mg _ send(struct mg _ connection *,const void * buf,int len);int mg _ printf(struct mg _ connection *,const char *fmt,...);void mg _ printf _ http _ chunk(struct mg _ connection * NC,const char *fmt,...);void mg _ send _ http _ chunk(struct mg _ connection * NC,const char *buf,size _ t len);void mg _ send _ response _ line(struct mg _ connection * NC,int status_code,const char * extra _ headers);void mg _ http _ send _ error(struct mg _ connection * NC,int code,const char * reason);void mg _ http _ send _ redirect(struct mg _ connection * NC,int status_code,const struct mg_str location,const struct mg _ str extra _ headers);void mg _ send _ head(struct mg _ connection * n,int status_code,int64_t content_length,const char * extra _ headers);在构建https服务器时,需要使用SSL相关的函数。首先你要在mongoose.h头文件中添加相关的宏定义来启用SSL支持,配置OpenSSL头文件的包含路径(我的OpenSSL头文件在D:\Code\openssl\inc32,mongoose包含# include < openssl/...& gt),并导入OpenSSL静态库:# define mg _ enable _ SSL 1 # pragma comment(lib,”。/openssl/libeay32.lib") # pragma注释(lib,"../openssl/ssleay32.lib”)然后调用struct MG _ connection * MG _ bind _ opt(struct MG _ mgr * mgr,constchar * address,MG _ CB(MG _ event _ handler _ t handler,void *user_data),struct MG _ bind _ opts opts);创建mg_connection对象时,服务器公钥(证书)和服务器私钥分别由mg_bind_opts参数的成员ssl_cert和ssl_key导入。 至于如何获取证书,一般来说,不必要的第三方CA的web服务器往往采用自签名证书的方式。具体步骤请参考之前的博客:OpenSSL生成HTTPS自签名证书。


  • 全部评论(0)
资讯详情页最新发布上方横幅
最新发布的资讯信息
【技术支持|常见问题】1556原创ng8文章搜索页面不齐(2024-05-01 14:43)
【技术支持|常见问题】1502企业站群-多域名跳转-多模板切换(2024-04-09 12:19)
【技术支持|常见问题】1126完美滑屏版视频只能显示10个(2024-03-29 13:37)
【技术支持|常见问题】响应式自适应代码(2024-03-24 14:23)
【技术支持|常见问题】1126完美滑屏版百度未授权使用地图api怎么办(2024-03-15 07:21)
【技术支持|常见问题】如何集成阿里通信短信接口(2024-02-19 21:48)
【技术支持|常见问题】算命网微信支付宝产品名称年份在哪修改?风水姻缘合婚配对_公司起名占卜八字算命算财运查吉凶源码(2024-01-07 12:27)
【域名/主机/服务器|】帝国CMS安装(2023-08-20 11:31)
【技术支持|常见问题】通过HTTPs测试Mozilla DNS {免费源码}(2022-11-04 10:37)
【技术支持|常见问题】别告诉我你没看过邰方这两则有思想的创意广告! (2022-11-04 10:37)

联系我们
Q Q:375457086
Q Q:526665408
电话:0755-84666665
微信:15999668636
联系客服
企业客服1 企业客服2 联系客服
86-755-84666665
手机版
手机版
扫一扫进手机版
返回顶部