req_ 0.1.31

Extract message form headers only once for one request ( support async and sync ) / 一个请求只提取一次消息, 支持异步和同步
Documentation
# req_

Use arena memory allocation bumpalo

Extract message form headers only once for one request ( support async / sync )

使用 arena 内存分配器 bumpalo

一个请求只提取一次消息, 支持异步 / 同步


```rust
use aok::{OK, Result};
use http::{HeaderMap, HeaderName, HeaderValue};
use req_::{Cookie, Req};
use tokio::time::{Duration, sleep};
use tracing::info;

#[static_init::constructor(0)]
extern "C" fn init() {
  loginit::init()
}

#[tokio::test]
async fn test() -> Result<()> {
  let mut headers = HeaderMap::new();

  let header_array = [
    ("cookie", "session_id=12345; user_id=67890"),
    ("content-type", "application/json"),
  ];

  for (name, value) in &header_array {
    headers.insert(
      HeaderName::from_static(name),
      HeaderValue::from_static(value),
    );
  }

  {
    let req: Req = headers.into();
    let req = &req;

    async {
      sleep(Duration::from_secs(2)).await;
      let cookie: &Cookie = req_::sync::get(req);
      info!("{}", cookie);
    }
    .await;

    async {
      sleep(Duration::from_secs(1)).await;
      let cookie: &Cookie = req_::sync::get(req);
      info!("{}", cookie);
    }
    .await;
  }
  info!("done");
  OK
}
```

## About

This project is an open-source component of
[i18n.site ⋅ Internationalization Solution](https://i18n.site).

- [i18 : MarkDown Command Line Translation Tool]https://i18n.site/i18

  The translation perfectly maintains the Markdown format.

  It recognizes file changes and only translates the modified files.

  The translated Markdown content is editable; if you modify the original text
  and translate it again, manually edited translations will not be overwritten
  (as long as the original text has not been changed).

- [i18n.site : MarkDown Multi-language Static Site Generator]https://i18n.site/i18n.site

  Optimized for a better reading experience

## 关于

本项目为 [i18n.site ⋅ 国际化解决方案](https://i18n.site) 的开源组件。

- [i18 : MarkDown命令行翻译工具]https://i18n.site/i18

  翻译能够完美保持 Markdown 的格式。能识别文件的修改,仅翻译有变动的文件。

  Markdown
  翻译内容可编辑;如果你修改原文并再次机器翻译,手动修改过的翻译不会被覆盖(如果这段原文没有被修改)。

- [i18n.site : MarkDown多语言静态站点生成器]https://i18n.site/i18n.site
  为阅读体验而优化。