API GraphQL đơn giản được xây dựng bằng Rust, với MongoDB làm cơ sở dữ liệu.
Dự án sử dụng file .env để quản lý các biến môi trường. Bạn có thể chỉnh sửa file này để thay đổi cấu hình.
.env: Cấu hình cho môi trường development (mặc định).env.production: Cấu hình cho môi trường production.env.testing: Cấu hình cho môi trường testing
Để chọn môi trường, bạn có thể đặt biến môi trường RUST_ENV:
# Development (mặc định)
RUST_ENV=development cargo run
# Production
RUST_ENV=production cargo run
# Testing
RUST_ENV=testing cargo runHoặc bạn có thể sao chép file môi trường tương ứng thành file .env:
# Production
cp .env.production .env
# Testing
cp .env.testing .env./run.shScript này sẽ:
- Dừng container MongoDB hiện tại (nếu có)
- Khởi động container MongoDB mới
- Đợi MongoDB khởi động hoàn tất
- Biên dịch và chạy ứng dụng GraphQL Rust
- Khởi động MongoDB bằng Docker Compose:
docker-compose up -d- Biên dịch và chạy ứng dụng:
cargo runSau khi ứng dụng chạy, bạn có thể truy cập GraphQL Playground tại:
http://localhost:4000/graphql
- Hello World:
{
hello
}- Lấy danh sách người dùng:
{
users {
id
name
email
age
}
}- Lấy người dùng theo ID:
{
user(id: "ID_của_người_dùng") {
id
name
email
age
}
}- Tạo người dùng mới:
mutation {
createUser(name: "Nguyễn Văn A", email: "nguyenvana@example.com", age: 30) {
id
name
email
age
}
}Bạn có thể cấu hình kết nối MongoDB qua biến môi trường:
MONGODB_URI: URI kết nối đến MongoDB (mặc định:mongodb://localhost:27017)MONGODB_DB: Tên cơ sở dữ liệu (mặc định:graphql_rust_db)