1 个不稳定版本
0.1.0 | 2021年3月31日 |
---|
#427 在 日期和时间 中
11KB
233 行
faf-http-date (no_std)
快速 (~20ns) 生成符合RFC 822/1123/2616的HTTP头部的日期。这用于 faf Web服务器
此crate很简单,您只需将缓冲区传递给提供的函数。函数将填充缓冲区中的日期
- 为什么使用缓冲区?因为它更快。
- 为什么传递缓冲区而不是让日期函数直接返回一个?因为它更快。
- 为什么使用字节而不是字符串/str?因为它更快,并且字节是您将要写入TCP套接字的内容,而不是字符串。如果您需要字符串,可以将缓冲区转换为
&str
或String
。请参见下面的示例
这是对 pyfisch/httpdate 进行了大量优化、剥离和修改的版本
示例
// 格式:b"Thu, 01 Jan 1970 00:00:00 GMT"
let mut buf = faf_http_date::get_date_buff_no_key();
faf_http_date::get_date_no_key(&mut buf);
// Optional, convert to str
let date_str = unsafe { std::str::from_utf8_unchecked(&buf[..]) };
格式:b"Date: Thu, 01 Jan 1970 00:00:00 GMT" (注意开头的 'Date: ')
let mut buf = faf_http_date::get_date_buff_with_key();
faf_http_date::get_date_with_key(&mut buf);
// Optional, convert to str
let date_str = unsafe { std::str::from_utf8_unchecked(&buf[..]) };