tlsinit

Crates.iotlsinit
lib.rstlsinit
version0.1.7
created_at2024-06-30 12:41:05.333652+00
updated_at2025-02-19 08:25:29.170696+00
descriptiontls for tokio_postgres
homepagehttps://github.com/i18n-site/rust/tree/dev/tlsinit
repositoryhttps://github.com/i18n-site/rust.git
max_upload_size
id1287960
size54,395
i18n.site (i18nsite)

documentation

README

tlsinit

tls for tokio_postgres, use rustls_native_certs

use aok::{OK, Void};
use static_init::constructor;
use tracing::info;

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

genv::s!(PG_URL);

#[tokio::test]
async fn test() -> Void {
  let tls = tokio_postgres_tls::MakeRustlsConnect {
    config: tlsinit::CLIENT.clone(),
  };

  let (client, connection) = tokio_postgres::connect(&PG_URL, tls).await?;

  tokio::spawn(async move {
    if let Err(e) = connection.await {
      tracing::error!("connection error: {}", e);
    }
  });

  let rows = client.query("SELECT $1::TEXT", &[&"hi"]).await?;

  let value: &str = rows[0].get(0);

  info!("value: {:?}", value);

  assert_eq!(value, "hi");

  OK
}

About

This project is an open-source component of i18n.site ⋅ Internationalization Solution.

关于

本项目为 i18n.site ⋅ 国际化解决方案 的开源组件。

Commit count: 68

cargo fmt