rust-axum 相关问题


如何使用 Axum Rust 处理从 api 网关到 lambda 的不同路由 URL?

我有一个 rust lambda 来处理从 dynamo DB 获取数据。 当 API Gateway 将代理信息传递到 lambda 时会出现问题,它还包括 URL 中的阶段。例如,...


Rust 时我该如何做? [已关闭]

此问题已被删除。


Rust 闭包默认是堆栈分配还是堆分配?

我知道 Rust 默认情况下在堆栈上分配,但论文 Ownership is Theft 说 Rust 闭包通常是动态分配的(我认为这意味着“在堆上”)。


使用 IntPtr 从 C# 调用 Rust 在 Enum 上失败 (EntryPointNotFound)

我正在尝试使用 FFI 的“不透明指针”样式,其中 C#(Unity)代码仅将我的 Rust 类型视为必须传递给各种 Rust 函数的 IntPtr。然而我得到了


导致段错误的 Rust 代码示例是什么?

我用 Google 搜索了 Rust 中的一些段错误示例,但现在没有崩溃。 Rust 现在能够防止所有段错误吗?有没有一个简单的演示会导致段错误?


如何在 Rust 中包含 dyn Iterator 的结构体上实现 Clone? [重复]

我在 Rust 中有以下结构: #[派生(克隆)] pub 结构方程迭代器 { 柜台:盒子>, 公式:圆弧方程...


Rust 如何忽略打印到标准输出错误?

如何忽略 Rust 中的管道错误?在 C 语言中,这是免费的: 用户@localhost:~ $ cat main.c #包括 int main(){printf("你好世界! “);} user@localhost:~ $ clang main....


使用 Rust + Ash 在 macOS 上创建 Vulkan 实例

我在 Rust 应用程序中创建 Vulkan 实例时遇到问题。 Vulkan SDK 安装在 /Users/verhage/VulkanSDK 中。 我按照 Ash 文档导出了所需的环境变量...


无法在 Rust 上解密 AES 密钥

我想提一下,我对 Rust 完全陌生,我要分享的代码只是一个帮助我学习该语言的练习: src/main.rs 使用 openssl::{ 密钥::密钥, rsa::{帕迪...


Rust 错误:编译时没有已知的大小

我正在学习 Rust。 我的理解 : iter() :集合内数据的只读视图。 into_iter() :集合内数据的可写和可读视图。 (警告:完全访问权限,但从 pa...


将 docker 容器中的 Rust API 暴露给外界

我在深水里 我用 Rust 制作了一个 API,与 postgres 数据库和 portainer docker 容器一起部署在 ubuntu 服务器上的 Docker 容器上。 连接电源没有问题...


Arc 内元素的 Rust 生命周期<Vec<>>

我有 Golang 背景,正在开发一个 Rust 项目,该项目具有以下设置: 我有一个基于 2 个通道的标准生产者/消费者设置:“工作通道”和“...


如何自动导入 Rust 子模块

有没有办法让我不必显式使用我声明的每个模块(也不完全限定它们)? 我正在遵循 Rust 教程,该教程让我将模块拆分为单独的


目标目录是否包含敏感信息?

我正在设置我的第一个 Rust 程序并将更改推送到 github。我提交了使用 Cargo 制作 rust 程序时创建的目标目录。此文件是否包含敏感内容


如何使用内部库 Enum 进行 Clap Args

我目前正在开发一个安全工具的 Rust 端口。与 Rust 的指南一致,我想将核心库隔离到自己的包中,以便我们可以创建各种工具(CLI、API、流......


根据我的测试,为什么 NodeJS 编码 Varint 比 Rust 快得多?

我使用以下两段代码对 Varint 进行编码,NodeJS 大约需要 900ms,而 Rust 大约需要 2700ms。为什么性能差距这么大? 看来分配内存更省时间-


在 Rust 中书写角度的负余弦的惯用方法是什么?

令 fi 为 f64 角度值。 -fi 的余弦可以用 Rust 写成以下两种方式 让 fi : f64 = PI/2; 让c1 = (-fi).cos(); 让 c2 = f64::cos(-fi); Form 2 对我来说似乎更自然......


如何在 Rust 中退出或退出 evcxr 而无需 ctrl-c'ing?

简单的问题,但是我如何退出 Rust 的 REPL 工具 evcxr? 我尝试了 quit()、exit()、:q,但之后就没有了主意。 好吧,我当然总是可以按 ctrl-c,但我想知道是否...


Rust 无法推断其中 Option<Fn> 为 None 的 Fn 类型

所以我遇到了这种情况,Rust 无法推断函数的泛型类型参数,该函数采用可选的 Fn 作为参数。 当将 None 传递给它时,它看起来像是泛型类型 arg...


使用 Rust 读取固定宽度文件

我正在尝试使用 Rust 读取固定宽度的文件,目的是将数据加载到 Polars 数据框中,但是,我无法正确解析该文件。 我正在尝试使用固定宽度板条箱作为极坐标


在Rust中使用sh1106(和类似的)时,有没有办法不“移动”i2c

我对 Rust 还很陌生,正在深入研究相对复杂的嵌入式编程,也许这就是我的问题,请耐心等待... 我使用 RPi Pico,带有基于 i2c 的 SH11106 显示屏,我们...


在 Rust 中使用多线程更改向量中的元素

我是 Rust 新手,我正在尝试将计算工作分配给线程。 我有字符串向量,我想为每个字符串创建一个线程来完成他的工作。有简单的代码: 使用 std::thr...


Rust 中有没有办法拥有可变大小的 int 和无符号整数类型?

在 Rust 中,标准整数类型的大小为 8、16、32、64、128 位。 但是是否可以操作非标准大小的整数类型(例如 u24、i7、...)? 这些非标准尺寸可能很有用...


Clap value_of_lossy 函数的 Rust 问题

我有一个结构: pub 结构配置 { 文件:Vec, .... } 我使用 Clap 库从命令行获取参数 .arg( arg::with_name("文件") ...


rust 文件夹结构组织

src |-- abc |-- main.rs |-- 记录器 |-- mod.rs Cargo.toml #Cargo.toml [[垃圾桶]] name = "abc" # 这将是二进制可执行文件的名称 路径=“src/abc/main.rs&qu...


在 powershell 与 cmd 中运行 Rust 代码的奇怪性能差异

我有一个不平凡的 Rust 应用程序。我正在谈论的这篇文章加载了约 500k 的文本,解析该文本并将其加载到 sqlite 数据库中。我在那段代码中放置了一个计时器来显示差异 什...


如何检测Rust Rocket_ws客户端与WebSocket断开连接

从rocket_ws文档(https://api.rocket.rs/v0.5/rocket_ws/)我知道我可以使用这段代码与客户端建立websocket连接: #[get("/echo?channel")] fn echo_ch...


使用 Rust 将 option<i32> 和 vec<i32> 存储在内存中

在程序中,定义了以下数据结构: 结构桶{ 数据:Vec, 阈值:选项, } 使用调试器,已经确定,对于一个ins...


签署 PNG 文件以获得 CMS 签名作为结果

我对 Rust 非常陌生,正在尝试签署 PNG 文件以获得 CMS 签名。 我正在使用货物 openssl 版本“0.10.62” 使用 openssl::cms::{CmsContentInfo, CMSOptions}...


将数组转换为HashMap的更简单方法

下面的代码会将数组中每种颜色的最大值转换为hashmap。也在 Rust 游乐场。 使用 std::collections::HashMap; 使用 std::cmp; fn 主() { 让数组= [ ...


对 PNG 文件进行签名即可获得 CMS 签名结果

我对 Rust 非常陌生,正在尝试签署 PNG 文件以获得 CMS 签名。 我正在使用货物 openssl 版本“0.10.62” 使用 openssl::cms::{CmsContentInfo, CMSOptions}...


如何允许在各种类型的 IntoIterator 项上多次实现同一个特征?

Rust 似乎仅在关联类型不同时才区分特征的不同实现。 如何在各种集合/迭代器上实现方法,但有


Cargo lambda 构建找不到 OpenSSL 开发标头

我正在尝试使用cargo-lambda 在Rust 中为AWS 编写一个lambda 函数。当我调用cargo lambda build --release --arm64 时,cargo lambda new 生成的示例函数构建得很好。然而,我们...


WebAssembly 中的 SIMD 指令模拟?

我正在调查 WebAssembly 项目中的缓慢情况,我想知道 SIMD 指令是否以某种方式被模拟。这是一个用于练习一些 SIMD 操作的 Rust 玩具库: 使用 core::arch::wasm...


如何从整数转换为字符串?

我无法编译将类型从整数转换为字符串的代码。我正在运行 Rust for Rubyists 教程中的一个示例,该示例具有各种类型转换,例如: “嘶嘶”.to_str()...


运行特定测试时未找到 Cargo `OUT_DIR` env var

有人可以帮助我理解这一点吗? 我有一个 Rust 项目,有一个 lib 板条箱:my_crate_2。这是它的文件结构: 我的项目/ ├── Cargo.toml └── 源文件/ └── main.rs 我的箱子2/ ├──...


如何使用 wasm-bindgen 和 --target no-modules 导入 JavaScript 函数?

我正在尝试弄清楚如何使用 Rust 和 wasm-bindgen 调用 JavaScript 函数。由于缺乏浏览器支持,我无法将 wasm-bindgen 与 ES6 模块与 Web Worker 一起使用。 到目前为止...


检查结果中选项内的值是否满足 Rust 条件的最佳方法是什么?

我有一个返回 Result、Error> 之类的函数,我想检查是否存在值以及它是否与条件匹配。有两种简单的方法: 如果...


Rust 相当于 C++ 命名空间?

使用 C++ 命名空间,我可以将任何文件中的任何内容放在任何位置,并且在编译时它们将“合并”到单个命名空间中。因此,这个文件结构: /* src/main.cpp */ int main() {


如何在MultiversX区块链上的Rust中实现USDT到EGLD代币的兑换?

我正在尝试获取 EGLD 中 USDT 的价格。我正在使用这个:https://github.com/multiversx/mx-exchange-sc/blob/main/dex/pair/src/lib.rs#L604 端点来获取价格。但不确定是否正确


共享在 Rust 中实现 Trait 的对象

我有一个对象特征,可以从某个索引提供字节。这些可能是文件、正在跟踪的进程、其他字节提供程序上的缓存等: 使用 std::结果::结果; 使用 std::io::Error ;


Rust 中的库 crate 和二进制 crate 有什么区别?

在阅读官方书籍时,我偶然发现了包裹和板条箱。为了创建一个新项目,我运行了以下命令: $ 货物新我的项目 创建了二进制(应用程序)“my-project”包 $ ls...


结构变量的移动是“移动”,但内存中分配了新空间,并且基础值的地址不同

我试图在包含具有实现 Copy 特征的类型的字段的结构的情况下理解 Rust 的移动语义。考虑以下结构: 结构书{ 作者:&'


如何在 Rust 中惯用地实现重要的类型状态模式?

我正在尝试构建一个简单CPU的FSM,它由大约40个状态组成,带有循环,以及跨整个CPU状态的许多变量的许多条件。这个 FSM 的运行就像一个简单的 Tur...


Rust E0506(借用值的赋值):在看似不相关的表达式上“借用稍后在此处使用”

我正在尝试使用 Option 和 Box 制作一个基本的链表实现,而无需使用不安全模式,并且在尝试制作删除所有内容的方法时遇到了这个特别奇怪的错误


使用带有“检查”功能的包装器是处理可选类型而不是传统方法的好方法吗?

像 C++ 和 Rust 这样的语言有一个 Option 类型,它基本上是一个带有值的枚举/布尔值。 但我觉得这可能会出现一些问题,例如: 返回/传递额外 f 的额外开销...


如何在 Rust 中指定与 const 泛型参数不同的类型?

我将为坐标创建一个通用类型。它应该能够指定每个轴的基数类型。 起初,我的代码如下所示: 使用 num::Signed; 结构坐标 我将为坐标创建一个通用类型。它应该能够指定每个轴的基数类型。 首先,我的代码如下所示: use num::Signed; struct Coordinate<Index: Signed> { x: Index, y: Index, } 另外,我希望它携带额外的绑定信息来帮助我检查实现中的访问,所以我写了这个。 use num::Signed; struct Coordinate<const Bound: isize, Index: Signed> { x: Index, y: Index, } 但是,即使Signed仅针对i8, ..., isize实现,我也不能简单地将Signed的值与isize进行比较。所以我转向这个: use num::Signed; struct Coordinate<const Bound: Index, Index: Signed> { x: Index, y: Index, } 当然,失败了。我想知道是否有任何可能的解决方案来解决这个问题。 您的第一个版本正朝着正确的方向发展,它只需要更多的特征界限: use num::Signed; #[derive(Debug)] struct Coordinate<const BOUND: isize, Index> where Index: Signed + PartialOrd + NumCast, isize: From<Index>, { x: Index, y: Index, } impl<const BOUND: isize, Index> Coordinate<BOUND, Index> where Index: Signed + PartialOrd + Copy, isize: From<Index>, { pub fn new(x: Index, y: Index) -> Option<Self> { if x >= Index::zero() && y >= Index::zero() && isize::from(x) < BOUND && isize::from(y) < BOUND { Some(Self { x, y }) } else { None } } } fn main() { dbg!(Coordinate::<10, i16>::new(5, 3)); dbg!(Coordinate::<10, i16>::new(5, 11)); } [src\main.rs:32] Coordinate::<10, i16>::new(5, 3) = Some( Coordinate { x: 5, y: 3, }, ) [src\main.rs:33] Coordinate::<10, i16>::new(5, 11) = None


© www.soinside.com 2019 - 2024. All rights reserved.