如何实现像SDK这样的东西?

问题描述 投票:0回答:1

我正在开发一个 Rust 应用程序,其中一些功能将在 Python 中实现。我计划向用户公开一些Python函数API,以便用户可以导入这些函数来编写自己的Python代码。然后他们将代码放在一个目录中,我的应用程序可以运行该脚本。

我不太清楚如何实现这一点。 对于 API,我应该以 DLL 或 .whl 的形式提供,还是仅以 Python 源代码的形式提供? 如果在用户脚本中调用API函数,如何运行脚本以及其中的API函数?

python rust sdk
1个回答
0
投票

1.您可以将 Actix 和任何来自 python 的 http 结合起来。

例如

use actix_web::{get, post, web, App, HttpResponse, HttpServer, Responder};

#[get("/")]
async fn hello() -> impl Responder {
    HttpResponse::Ok().body("Hello world!")
}

#[post("/echo")]
async fn echo(req_body: String) -> impl Responder {
    HttpResponse::Ok().body(req_body)
}

async fn manual_hello() -> impl Responder {
    HttpResponse::Ok().body("Hey there!")
}

2.您可以创建 rust 发布版本,并通过带有路径的 python 运行它。

=> 如果你想从你的机器上执行 rust 二进制文件,只需通过路径从 python 执行你的脚本就可以了。但请考虑,如果您想从客户端执行它,则必须为客户端操作系统提供某些释放版本。

3.所以如果你想获得任何响应数据。

最简单的方法 - 您可以通过本地 API 移动数据,而无需花费太多时间等待获取数据,但更好的方法 - 从 i/o 读取数据。

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