一点一滴成长

导航

2025年8月1日 #

Http认证(鉴权)

摘要: 1、Http无状态 Http无状态指的是当前请求并不会记录它的上一次请求信息,所以当一个用户登录成功后,继续访问其它页面(再次请求数据)的话,怎样标识该用户是已登录状态。 用户身份认证,主要有BASIC认证(基本认证)、DIGEST认证(摘要认证)、SSL客户端认证、FormBase认证(基于表单认 阅读全文

posted @ 2025-08-01 14:11 整鬼专家 阅读(64) 评论(0) 推荐(0)

2025年7月31日 #

跨域问题

摘要: 1、跨域问题的产生 跨域问题的根源是浏览器的同源策略:出于安全考虑,当从A域名请求B域名的资源时,如果A、B两域名不同源(协议不同/域名不同/端口不同),浏览器就会拦截这次请求或响应。 为什么会有跨域限制——防止窃取用户数据:比如你打开了银行网站www.bank.com进行了登录,后来你又打开了恶意 阅读全文

posted @ 2025-07-31 13:48 整鬼专家 阅读(52) 评论(0) 推荐(0)

2025年7月21日 #

SSE客户端C++实现(使用libcurl)

摘要: 1、SSE数据包格式 如下所示,一条SSE消息中可以有一个或多个message,每个message由\n\n分隔,一个message也可以由一个或多个filed组成,每个filed由\n分隔,filed有data、id、event、retry四种。 data表示消息数据,如"data:value\n 阅读全文

posted @ 2025-07-21 14:50 整鬼专家 阅读(202) 评论(0) 推荐(0)

2025年7月4日 #

使用libcurl/curlpp进行http通信

摘要: 1、使用libcurl进行http通信 进入下载页面 https://curl.se/download.html 选择对应的版本,这里选择Windows 32-bit,下载完成后解压,include为头文件目录,bin目录下即为libcur的dll文件(.lib可以通过.def文件来生成),如下所示 阅读全文

posted @ 2025-07-04 16:58 整鬼专家 阅读(127) 评论(0) 推荐(0)

2024年9月2日 #

零拷贝IO

摘要: 以下内容参考和转载自:小林coding,原来 8 张图,就可以搞懂「零拷贝」了。 1、DMA 在没有DMA(直接内存访问)技术之前,调用read()读取磁盘文件的话,会有5个步骤:CPU向磁盘发起IO请求—>磁盘控制器将数据放到磁盘缓冲区中后产生一个IO中断—>CPU收到IO中断信号后将磁盘缓冲区数 阅读全文

posted @ 2024-09-02 13:04 整鬼专家 阅读(89) 评论(0) 推荐(0)

2024年5月21日 #

libuv进程

摘要: 1、创建进程 调用uv_spawn()来启动一个进程: #include <stdio.h> #include <uv.h> uv_loop_t* loop; uv_process_t child_req; uv_process_options_t options; //全局变量会自动初始化int类 阅读全文

posted @ 2024-05-21 09:18 整鬼专家 阅读(246) 评论(0) 推荐(0)

2024年5月13日 #

libuv线程

摘要: 1、概述 libuv的线程API与Linux的pthread的API在使用方法和语义上很接近,因为要跨平台,所以libuv支持的线程API个数很有限。libuv中只有一个主线程,主线程上只有一个event loop。如下为创建线程的一个简单示例: #include <stdio.h> #includ 阅读全文

posted @ 2024-05-13 16:44 整鬼专家 阅读(380) 评论(0) 推荐(0)

2024年5月11日 #

libuv网络操作

摘要: 1、获取本机网络地址 使用uv_interface_addresses()可以获取本机网络地址接口信息,如下所示,其第一个参数是一个指针的指针,因为仅传递指针的话函数内只能改变指针指向的内容,不能改变该指针值,有了指针的地址就可以改变指针的值: #include <stdio.h> #include 阅读全文

posted @ 2024-05-11 10:03 整鬼专家 阅读(166) 评论(0) 推荐(0)

2024年5月9日 #

libuv文件系统

摘要: 1、读取和写入文件 如下为异步打开test.dat文件后,读取文件数据并将其写入到标准输出的示例,读取和写入的时候使用uv_buf_t类型来作为缓存: #include "uv.h" #include <assert.h> uv_fs_t open_req, read_req, write_req; 阅读全文

posted @ 2024-05-09 09:50 整鬼专家 阅读(211) 评论(0) 推荐(0)

libuv概述

摘要: 1、综述 libuv是一个高性能的,事件驱动的I/O库,支持跨平台(由平台决定使用libev或IOCP),诞生自node.js(关于node.js的介绍参见文章JavaScript介绍中node.js部分)。libev是网络库libevent的改进版,但libev在Windows下的性能不太好(使用 阅读全文

posted @ 2024-05-09 09:50 整鬼专家 阅读(972) 评论(0) 推荐(0)