#macro #generate #sdk #land #http #handler #procedural

land-sdk-macro

Land SDK宏提供了一种进程宏,用于生成Land SDK代码

8个版本

0.1.4 2023年10月17日
0.1.1 2023年9月1日
0.1.0 2023年8月29日
0.0.4 2023年6月22日

#1083 in 过程宏


用于 land-sdk

Apache-2.0

30KB
475

land-sdk-macro

此crate提供了land_sdk(https://crates.io/crates/land-sdk)宏,该宏用于生成http处理函数代码。请勿直接使用此crate。

关于land-sdkcrate的更多信息请在此处查看here.


lib.rs:

Runtime.land的Rust SDK宏。

此宏用于开发land-sdk中的Runtime.land函数。不应直接使用。

Hello World

use land_sdk::http::{Body, Request, Response};
use land_sdk::http_main;

#[http_main]
pub fn handle_request(req: Request) -> Response {
    // read uri and method from request
    let url = req.uri().clone();
    let method = req.method().to_string().to_uppercase();

    // build response
    http::Response::builder()
        .status(200)
        .header("X-Request-Url", url.to_string())
        .header("X-Request-Method", method)
        .body(Body::from("Hello Runtime.land!!"))
        .unwrap()
}

依赖关系

~0.8–1.4MB
~28K SLoC