WebSocket сервер для мини игры обмена файлами (Rust)
· 10 мин. чтения
Это туториал по написанию небольшого WebSocket сервера для мультиплеерной мини игры. Суть игры простая – обмениваешься файлами с другими игроками в небольшом 2D пространстве. Полный код приложений есть в гитхабе.
к сведению
Ссылка на статью на хабре – https://habr.com/ru/articles/736174/
Начало
к сведению
Большая часть объяснений описана в качестве комментариев к коду.
Создайте проект с помощью команды cargo new <name>
. После этого добавьте в файл Cargo.toml все эти зависимости.
[dependencies]
# Рантайм для асинхронного кода
tokio = { version = "1.28.1", features = ["full"] }
# Асинхронная версия библиотеки tungstenite, реализующей протокол WebSocket,
# работающая в связке с библиотекой tokio.
tokio-tungstenite = "0.18.0"
# Вспомогательные методы для работы с массивами байтов.
bstr = "1.4.0"
# Вспомогательные метода для работы асинхронными объектами.
futures-util = "0.3"
# Библиотека для работы регулярными выражениями.
regex = "1"
# Mutex, RwLock и тд. быстрее чем в стандартной библиотеке.
parking_lot = "0.12.1"
# Генерирует рандомные числа.
rand = "0.8.5"