Xata + Rust:入門指南。

https://dev.to/hackmamba/xata-rust-a-getting-started-guide-5p4

Xata + Rust: 入門指南

Xata 是一個用於構建現代且健壯應用程序的無伺服器數據平台。建立在 PostgreSQL 之上,Xata 提供統一的 REST API 以實現高效的數據管理。Xata 不同於其他數據平台,它引入了獨特的功能,顯著地 簡化了開發者的工作流程。集成 Xata 到任何應用程序中的一些關鍵優勢包括:

1. 強大的文件管理:Xata 提供 API 和 SDK,可以直接將圖片、文檔等安全上傳到數據庫記錄中。

2. 支持多環境和工作流程:使用 Xata,為測試、暫存或功能發布創建獨立的生產環境變得無縫。

3. 快速搜索支持:Xata 自動索引上傳的數據,並且能夠在表格和分支之間快速高效地搜索數據。

4. AI 支持:Xata 提供向量嵌入和 AI 解決方案,以加強智能應用程序的開發。

要體驗 Xata 的功能,我們將在 Rust 中構建一個項目管理 API。此 API 將提供創建、讀取、更新和刪除(CRUD)項目的功能。項目存儲庫可以在此處找到。

先決條件

要跟隨本教程,需要具備以下:

1. 對 Rust 的基本了解

2. Xata 帳戶。註冊免費

3. Postman 或任何您選擇的 API 測試應用程序

開始

首先,需要進入所需的目錄並運行以下命令:

cargo new rust-xata && cd rust-xata

此命令會創建一個名為 rust-xata 的 Rust 項目並進入該項目目錄。

接下來,通過修改 Cargo.toml 文件中的[dependencies]部分來安裝所需的依賴項:

[dependencies]
actix-web = “4.4.1”
serde = { version = “1.0.195”, features = [“derive”] }
serde_json = “1.0.111”
dotenv = “0.15.0”
reqwest = { version = “0.11.23”, features = [“json”] }

actix-web = “4.4.1”是用於構建 Web 應用程序的基於 Rust 的框架。

serde = { version = “1.0.145”, features = [“derive”] } 用於序列化和反序列化 Rust 數據結構。

serde_json = “1.0” 用於操作 JSON 和其反向操作。

reqwest = { version = “0.11”, features = [“json”] } 用於發送 HTTP 請求。

我們需要運行以下命令來安裝依賴項:

cargo build

應用程序結構

擁有良好的項目結構是非常重要的,因為它可以使代碼庫易於維護且易於他人閱讀或管理。

為此,需要進入 src 目錄,在此文件夾中創建一個 api 文件夾。在 api 文件夾中,還需要創建 mod.rs、models.rs、services.rs 和 handlers.rs 文件。

mod.rs 是用於管理應用程序可見性的文件。

models.rs 用於結構化我們的應用程序數據。

xata_services.rs 用於封裝我們的應用程序邏輯。

handlers.rs 用於結構化我們的 API。

接下來,需要通過將它們引入到 mod.rs 文件中來將這些文件聲明為模塊

pub mod handlers;
pub mod models;
pub mod services;

最後,需要通過將它引入到 main.rs 文件中來註冊 api 文件夾作為父模塊,如下所示:

mod api; //add

fn main() {
println!(“Hello world”)
}

在 Xata 上設置數據庫

要開始,登錄到 Xata 工作區並創建項目數據庫。在項目數據庫內,創建一個 Project 表並按如下所示添加列:

列類型

列名

String

name

Text

description

String

status

在表格內,Xata 自動添加 id、xata.createdAt、xata.updatedAt 和 xata.version 列,我們也可以利用這些列執行高級數據操作。

獲取數據庫 URL 並設置 API 密鑰

為了安全地連接到數據庫,Xata 提供了一個獨特且安全的 URL 來訪問它。要獲取數據庫 URL,點擊“獲取代碼片段”按鈕並複製 URL。然後點擊 API 密鑰鏈接,添加新的密鑰,保存並復制 API 密鑰。

設置環境變量

接下來,我們必須將我們的數據庫 URL 和 API 密鑰作為環境變量添加。為此,需要在根目錄中創建一個.env 文件並添加複製的 URL 和 API 密鑰。

XATA_DATABASE_URL= <用複製的數據庫 URL 替換>
XATA_API_KEY=<用複製的 API 密鑰替換>

使用 Rust 和 Xata 建立項目管理 API

當我們在 Xata 上完全設置了我們的數據庫並創建了一個安全的 URL 來訪問它後,我們可以開始構建我們的 API。

創建 API 模型

為了表示應用程序數據,我們需要更新 models.rs 文件,如下所示:

// 代碼段可以放在這裡

創建 API 服務

當我們的應用模型完全設置好後,我們現在可以使用它們來創建我們的應用程序邏輯。為此,我們需要通過以下方式更新 xata_service.rs 文件:

// 代碼段可以放在這裡

//加入所需的依賴

pub struct XataService;

// 創建一個 XataService 結構體

最後,我們需要添加使用輔助方法執行 CRUD 操作的方法。

// 代碼段可以放在這裡

創建 API 處理程序

完成這些後,我們可以使用服務程序來創建我們的 API 處理程序。首先,我們需要向 handlers.rs 文件添加以下代碼段:

// 代碼段可以放在這裡

將一切匯總在一起

完成上述步驟後,我們需要更新 main.rs 文件,包括我們的應用程序入口點並使用處理程序。

// 代碼段可以放在這裡

以上代碼創建了一個新服務器,為其添加了處理程序並在 localhost:8080 上運行。

完成了這些步驟後,我們可以使用以下命令啟動開發服務器:

cargo run main

我們還可以通過檢查 Xata 上的表格來確認項目管理數據。

總結

本文討論了 Xata 是什麼,並提供了一個詳細的分步指南來使用它在 Rust 中構建項目管理 API。除了之前探討過的功能外,Xata 還包括更多專門設計的功能,開發人員可以利用這些功能來構建從小型到大型應用程序的應用程式。

這些資源也可能有幫助:

– Xata 文檔

– Actix Web 框架

via DEV Community

February 5, 2024 at 05:17PM

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *