当前libhv版本1.3.3,解析前端json时,如果网页传递参数是整数或者为空字段时,使用libhv自带的json库解析时,参数字段当做字符串获取参数时,会导致底层服务崩溃。

解决办法:

找到打开cpputil-》json.hpp文件,找到void from_json(const BasicJsonType& j, typename BasicJsonType::string_t& s)函数

如下图增加3840和3841行,重新打包编译,替换新库,问题解决。

 

 

 

概述

libhv 是一个跨平台的轻量级网络库,由中国开发者ithewei开发并维护。它提供了类似libevent、libev和libuv的事件循环功能,但设计上更加简洁易用,且具有更丰富的特性。

主要特性

  1. 跨平台支持:

    • 支持Linux/Windows/macOS/Android/iOS等主流操作系统

    • 提供统一的API接口

  2. 事件驱动:

    • 支持IO事件、定时器事件和自定义事件

    • 高性能事件循环实现

  3. 协议支持:

    • 内置HTTP客户端/服务端

    • 支持WebSocket

    • 支持SSL/TLS加密通信

  4. 易用性:

    • 简洁的API设计

    • 完善的文档和示例

    • 头文件即文档(自注释代码)

  5. 高性能:

    • 采用epoll/kqueue/IOCP等系统级高性能IO多路复用技术

    • 多线程支持