如何获取通过 libcurl 连接传输的总字节数
How to get total bytes count transferred over the connection with libcurl?
Libcurl 允许获取应用程序级协议(HTTP、FTP 等)发送和接收多少字节的信息。但是,有没有办法获取底层套接字发送和接收的字节数?我涉及所有数据,包括,例如,套接字用于建立SSL连接的字节。因此,我基本上正在寻找一种方法来从libcurl获取与Apache HTTP客户端在HttpConnectionMetrics.getSentBytesCount()
和HttpConnectionMetrics.getReceivedBytesCount()
中提供的相同信息。一个想法是直接从C++访问 Libcurl 使用的套接字;但是,如何获取此套接字总发送/接收字节数?
使用CURLOPT_DEBUGFUNCTION,只需将不同的部分相加,因为它显示了套接字级别的数量。因此,这将为您提供所有使用纯文本的协议的确切数字,那些不使用SSL的协议
但是 - 这不一定会给你SSL级别的东西的计数器,尽管在HTTPS/FTPS等情况下,因为libcurl并不总是暴露这一点。这取决于构建它是为了使用哪个特定的 TLS 后端。OpenSSL后端应该没问题,它也会告诉您传入和传出的TLS数据(使用相同的调试回调)。
相关文章:
- 当套接字连接断开时检测C/C++Unix
- 发送一个带有libcurl C++问题的帖子请求:s
- 无法在windows上使用mingw将sqlite3与c连接
- 到连接组件算法的问题(递归)
- QTcpSocket在不阻塞GUI的情况下重新连接到服务器
- 使用libcurl提交批量url的正确BING Api POST url是什么
- 无法在C++中建立与MySQL数据库的连接
- PC中的程序和PHONE中的本机描述应用程序之间的数据连接
- 在Qt Creator中,如何在连接到正在运行的进程后查看控制台输出
- 连接 dockerized 模型和 dockerized 数据库时出现"无法 SQLConnect"错误
- 使用 bfs 解决连接组件问题时得到错误的答案
- 在C++的两个字符串中连接以逗号分隔的唯一值
- 如何修复valgrind启动时的致命错误(与libc6-dbg和libc6-dbg:i386连接)
- C++应用程序 MySQL odbc 数据库连接错误:在引发"otl_tmpl_exception<>"实例后终止调用
- 在 libcurl 连接池中预创建连接
- libcurl 和 DNS ttl 中的内部连接管理
- 如何应用 libcurl 的持久连接选项
- 超时后重新发出与Libcurl的连接
- 如何获取通过 libcurl 连接传输的总字节数
- 使用libcURL通过HTTP代理连接FTP服务器失败