25 个版本 (10 个破坏性更新)
0.11.0 | 2019年11月12日 |
---|---|
0.10.0 | 2019年7月15日 |
0.9.0 | 2019年6月11日 |
0.6.0 | 2019年3月19日 |
0.1.5 | 2018年7月28日 |
#14 in #service-bus
每月下载 110 次
705KB
16K SLoC
Rust 的 Azure Functions
Rust 的 Azure Functions crate 支持使用 Rust 创建 Azure Functions。
以下 Azure Functions 触发绑定被支持
- blob 触发器
- Cosmos DB 触发器
- Durable Activity 触发器
- Durable Orchestration 触发器
- Event Grid 触发器
- Event Hub 触发器
- 通用触发器
- HTTP 触发器
- Service Bus 触发器
- 队列触发器
- 定时器触发器
以下 Azure Functions 输入绑定被支持
以下 Azure Functions 输出绑定被支持
- blob 输出
- Cosmos DB 输出
- Event Hub 输出
- 通用输出
- HTTP 输出
- 队列输出
- SendGrid 电子邮件消息输出
- Service Bus 输出
- SignalR 群组操作输出
- SignalR 消息输出
- 表输出
- Twilio SMS 消息输出
最终将实现更多绑定,包括自定义绑定数据。
示例
首先安装 Azure Functions for Rust SDK
$ cargo install azure-functions-sdk
创建一个新的 Azure Functions for Rust 应用程序
$ cargo func new-app hello && cd hello
创建一个 HTTP 触发器函数
$ cargo func new http -n hello
这会生成 src/functions/hello.rs
,内容如下
use azure_functions::{
bindings::{HttpRequest, HttpResponse},
func,
};
#[func]
pub fn hello(req: HttpRequest) -> HttpResponse {
"Hello from Rust!".into()
}
Azure Functions 通过将 #[func]
属性应用于 Rust 函数来实现。
使用 cargo func run
运行应用程序
$ cargo func run
上述 Azure Function 可以通过 https://127.0.0.1:8080/api/hello
来调用。
预期的响应将是 Hello from Rust!
。
依赖关系
~21–33MB
~548K SLoC