7得票1回答
无法将UUID用作主键:Uuid:diesel::Expression未满足。

我希望在Postgres表中将UUID字段作为主键,但是我遇到了以下错误: error[E0277]: the trait bound `uuid::Uuid: diesel::Expression` is not satisfied --> database/src/models....

11得票1回答
在Rust中将函数转换为特征(trait)的机制是什么?

以下是actix-web的示例: actix-web提供了如下示例: use actix_web::{web, App, Responder, HttpServer}; async fn index() -> impl Responder { "Hello world!" ...

54得票10回答
使用Docker构建时缓存Rust依赖项

我在Rust+Actix-web中有一个“Hello World”网站项目,遇到了几个问题。首先是代码的每一次更改都会导致整个项目重新编译,包括下载和编译每个crate,希望能像普通开发一样工作——即缓存已编译的crates,仅重新编译我的代码库。第二个问题是我的应用程序无法通过Web浏览器访...

20得票1回答
如何解决使用actix-web的Json类型时出现的“serde :: Deserialize的实现不够通用”的问题?

我正在使用actix-web编写一个服务器:use actix_web::{post, web, Responder}; use serde::Deserialize; #[derive(Deserialize)] struct UserModel<'a, 'b> { u...

17得票1回答
错误 "/lib/x86_64-linux-gnu/libc.so.6: 找不到版本为 `GLIBC_2.33' 的库"

这是我的 Docker 文件: FROM ubuntu:20.04 RUN apt-get update && apt-get upgrade -y RUN apt-get install libssl-dev RUN apt-get install -y -q build...

7得票2回答
Actix-web集成测试:重用主线程应用程序

我正在使用actix-web编写一个小型服务。我正在添加集成测试以评估其功能,并注意到在每个测试中,我都必须重复主应用程序中的相同定义,只是它被测试服务包装: let app = test::init_service(App::new().service(health_check)).awa...

16得票1回答
柴油应该使用同步执行器(sync actor)、actix_web::web::block还是futures-cpupool来运行?

背景 我正在使用diesel通过r2d2开发actix-web应用程序,但不确定如何最好地进行异步查询。我找到了三个看起来合理的选项,但不确定哪个是最好的。 潜在解决方案 同步Actor 首先,我可以使用actix示例,但这相当复杂,并且需要大量的样板文件来构建。我希望存在更合理的解决...

7得票1回答
如何在 Rust 中将无效的 JSON 请求体的错误描述返回给客户端?

在Python中,我可以使用marshmallow或Pydantic来验证用户输入,只需定义一个模式(类似于Rust结构)。然后使用该模式,Marshmallow会加载用户输入并返回它发现的错误。例如: 我可以通过实现ResponseError来自定义错误处理,但是如何将错误请求体中...

7得票1回答
为什么我的共享 actix-web 状态有时会重置回原始值?

我正在尝试在Actix-Web框架中使用Arc和Mutex实现共享状态。下面的代码可以编译通过,但是运行时计数器有时会归零。如何防止这种情况发生? use actix_web::{web, App, HttpServer}; use std::sync::{Arc, Mutex}; // ...

34得票5回答
如何在actix-web中创建受保护的路由?

我需要验证用户是否有权限访问某些路由。 我已经创建了三个“作用域”(guest,auth-user,admin),现在我不知道如何检查用户是否可以访问这些路由。 我正在尝试实现身份验证中间件,该中间件应该检查用户是否具有正确的cookie或令牌。(我能够从请求头中打印出cookie),但我不知...