问题标签 [rust-rocket]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3082 浏览

rust - Rust/Rocket:没有为结构实现特征 `serde::ser::Serialize`

我正在尝试使用 Rocket 制作一个简单的端点。我Cargo.toml有这些依赖项:

main.rs好像:

编译导致错误:

我对如何查看此错误感到非常困惑。是依赖问题吗?为什么?我已将rocket依赖项版本化为相同的版本,但显然这种serde依赖项并不令人满意。谷歌搜索声称这是我的一个依赖项中的版本不匹配 - 但我该如何自己解决这个问题?

0 投票
1 回答
519 浏览

mysql - 如何将数据库连接传递到 Rocket 端点和函数?

我的 Web 应用程序有一个通过 Rocket 的 REST API,连接到 MySQL 数据库,并且有一个端点。我无法弄清楚如何访问控制器内部的数据库连接:

我的假设是#[get("/orgs")]会生成一堆代码。我发现了这个:https ://rocket.rs/v0.4/guide/state/#databases - 看起来是正确的,但我无法找到一个通过连接字符串连接到我的 MySQL 实例的工作示例。

这是我的依赖项:

如何建立 MySQL 连接并传递它?

0 投票
1 回答
647 浏览

reactjs - 有没有一种干净的方法可以从 Rust Rocket 后端服务 React 构建

通常 React 构建只是作为来自 nginx 等网络服务器的静态文件提供,但我想使用来自 React 构建的 Rust Rocket 提供前端静态文件,我正在努力寻找一种好的方法,这里是我的路线已经设置

这可行,但它不提供像 favicons 或 manifest.json 文件这样的东西,我宁愿不为每个文件添加特定的路由,有没有人以更好的方式解决了这个问题?

请在此处查看项目代码

0 投票
1 回答
381 浏览

json - 当内容类型不是“application/json”时,如何在 Rocket 中解析 JSON 正文?

我正在尝试将浏览器直接提交的这个 JSON CSP 记录解析为嵌套结构:POST

发送以下标头:

我遵循Rocket JSON data guide,但请求生成一个Unprocessable Entity (422),我不知道为什么。

我的猜测是这是由于Content-Type: application/csp-report我无法更改的标题,因为浏览器会自动发送报告。

0 投票
1 回答
193 浏览

rust - 车把三个阵列在一个循环中

我有一个看起来像这样的 Rust 结构:

我正在尝试使用 Rocket.rs 和 Handlebars 模板获得输出。

我的车把模板目前看起来像这样,但它不起作用。

我收到以下错误Error: Error rendering Handlebars template 'index' Error rendering "index" line 28, col 18: invalid digit found in string,这可能与@index我在 HBS 标签中使用的变量有关。

有没有其他方法我只能从两个数组中取出一个并将它们并排放置而不必改变我的结构?

0 投票
0 回答
93 浏览

linux - Rocket App在等待futex时挂在linux上

我有一个简单的火箭 0.5.0-dev 应用程序

main.rs

货运.toml

在我的开发机器(cygwin 中的 rustc 1.47.0 (18bf6b4f0 2020-10-07))上,我可以编译运行这个程序,x86_64-pc-windows-gnu 目标没有问题。

我的 CI 为 x86_64-unknown-linux-musl 构建了这个程序,并将其打包到一个容器中。

Dockerfile

但是,一旦我将此图像部署到 OSCP,我就得到了……什么都没有。该程序只是无限期挂起。我将应用程序从容器中复制出来,并尝试在 Linux 服务器(SMP Debian 4.9.30-2 (2017-06-12) x86_64 GNU/Linux)上运行它,结果相同。我跑了 strace 给了我

似乎应用程序在等待 futex 时死锁,我只是不知道为什么(以及为什么它不会在 Windows 上发生)。我已经尝试使用 x86_64-unknown-linux-gnu 进行编译并切换到系统分配器,但均无济于事。

0 投票
1 回答
34 浏览

generics - 具有泛型参数类型的函数

我正在使用 Rocket Web 框架,我需要创建一个具有通用参数类型参数的函数:

这是我遇到的错误:

如何Serialize为泛型类型实现特征,T或者是否有另一种方法来解决问题?

0 投票
2 回答
1788 浏览

rust - 如何从 Rocket 中的请求中检索 HTTP 标头?

我会在 Python 中使用烧瓶做这样的事情:

我无法弄清楚如何访问token标题并将其存储为String变量。

0 投票
1 回答
596 浏览

json - Rocket 无法解析 JSON 正文

我正在尝试使用 Postman 向我的 Rust API 发出 POST 请求:

货物.toml:

Content-Type: application/json在 Postman 中配置了一个标头,我的请求正文是{"status": "running"}

在此处输入图像描述

我正进入(状态

0 投票
0 回答
61 浏览

reactjs - 发布到 Rocket.rs 时 React Axios POST 失败

我正在尝试使用 Axios 从我的 React 应用程序向我的 Rust Rocket API 发送一个发布请求。问题是发送到 API 的第一个请求被阻止,而之后的每个请求都通过甚至返回响应数据。

这是我的 Axios 发布请求:

这是我的 Cargo.toml 文件:

这是我的 Rust 代码:

最后是控制台输出和网络输出的截图:

在此处输入图像描述

在此处输入图像描述

我真的不想将我的应用程序放在服务器上,但我完全不知道如何进行此操作。我知道有一个叫做 Hyper 的东西可以设置 Rocket 的 Headers,但我不知道如何将它添加到我的应用程序中。