从零开始:用 Rust 编写你的第一个 Web 服务

Rust 是一种现代、高性能的编程语言,近年来在 Web 开发领域也有了一席之地。本文将介绍如何使用 Rust 编写一个简单的 Web
程序,从搭建开发环境到创建第一个 Web 页面。

1. 开发环境搭建

首先,确保你已经安装了 Rust 工具链。你可以通过在终端中运行以下命令来安装 Rust:

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

然后,按照提示完成 Rust 工具链的安装。

接下来,我们需要安装一个叫做 warp 的 Rust Web 框架。在你的项目目录下,运行以下命令:

cargo new my_web_app
cd my_web_app

Cargo.toml 文件中添加 warp 作为依赖:

[dependencies]
warp = "0.3"

然后运行以下命令安装依赖:

cargo build

2. 编写 Web 服务

现在,让我们创建一个简单的 Web 服务。在 src/main.rs 中,添加以下代码:

use warp::Filter;#[tokio::main]
async fn main() {// 定义路由let hello = warp::path!("hello" / String).map(|name| format!("Hello, {}!", name));// 启动服务器warp::serve(hello).run(([127, 0, 0, 1], 3030)).await;
}

这个代码创建了一个简单的路由,当访问 /hello/{name} 时,会返回一个包含问候语的字符串。

3. 运行 Web 服务

现在,让我们运行我们的 Web 服务。在项目根目录下运行:

cargo run

你会看到类似如下的输出:

   Compiling my_web_app v0.1.0 (/path/to/your/project/my_web_app)Finished dev [unoptimized + debuginfo] target(s) in 2.10sRunning `target/debug/my_web_app`

这表示你的服务已经在本地运行在 127.0.0.1:3030 上了。

4. 访问你的 Web 服务

现在,打开你的浏览器并访问 http://localhost:3030/hello/World。你应该会看到一个包含问候语的页面,类似于:

Hello, World!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/677076.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

肯尼斯·里科《C和指针》第12章 使用结构和指针(1)链表

只恨当时学的时候没有读到这本书,,,,,, 12.1 链表 有些读者可能还不熟悉链表,这里对它作一简单介绍。链表(linked list)就一些包含数据的独立数据结构(通常称为节点)的集…

有关网络安全的课程学习网页

1.思科网络学院 免费学习skillsforall的课程 课程链接:Introduction to Cybersecurity by Cisco: Free Online Course (skillsforall.com) 2.斯坦福大学计算机和网络安全基础 该证书对于初学者来说最有价值,它由最著名的大学之一斯坦福大学提供。您可…

小游戏和GUI编程(3) | 基于 SFML 的字符阵

小游戏和GUI编程(3) | 基于 SFML 的字符阵 1. 简介 使用 EasyX 图形库时, 官方第一个例子是字符阵。 EasyX 不开源, 也不能跨平台, API 陈旧, API 是 C 而不是 C。 现在使用 SFML 来实现字符阵, 克服 EasyX 的这些问…

Java:Arrays类、Lambda表达式、JDK新特性(方法引用) --黑马笔记

一、Arrays类 1.1 Arrays基本使用 Arrays是操作数组的工具类,它可以很方便的对数组中的元素进行遍历、拷贝、排序等操作。 下面我们用代码来演示一下:遍历、拷贝、排序等操作。需要用到的方法如下: public class ArraysTest1 {public stat…

深度学习(13)--PyTorch搭建神经网络进行气温预测

一.搭建神经网络进行气温预测流程详解 1.1.导入所需的工具包 import numpy as np # 矩阵计算 import pandas as pd # 数据读取 import matplotlib.pyplot as plt # 画图处理 import torch # 构建神经网络 import torch.optim as optim # 设置优化器 1.2.读取并处理数据…

清平乐-春风丽日

今天,是2024年农历除夕日,远方家人已于昨夜风尘扑扑地倦鸟归巢,团聚过龙年,今晨酣睡未起。老龄笔者心情极佳,一夜好梦醒来,推窗仰头展望苍穹,喜上心头:啊!接连几天的小雨…

《乱弹篇(十二)聊春晚》

龙年大初一,老龄笔者发表《乱弹篇(十二)》。“十二”的标志,乃好事成双“二”。喜庆有余,自不待言! 除夕夜我没有看春晚,是在继续追剧,即以明朝宫廷内斗为背景的电视连续剧《后宫》…

【医学大模型 尘肺病】PneumoLLM:少样本大模型诊断尘肺病新方法

PneumoLLM:少样本大模型诊断尘肺病新方法 提出背景PneumoLLM 框架效果 提出背景 论文:https://arxiv.org/pdf/2312.03490.pdf 代码:https://github.com/CodeMonsterPHD/PneumoLLM/tree/main 历史问题及其背景: 数据稀缺性问题&a…

CleanMyMac2024智能算法有哪些优点和缺点?

CleanMyMac的智能算法在识别和清理垃圾文件方面具有一些明显的优点和缺点。cleanmymac是我必装的mac端清理软件,界面简洁好看,完美适配mac系统,文件清理的速度、精度都比较优秀,还是比较不错的呢。cleanmymac作为一款第三方清洁应…

SQL语言复习-----1

1,前言 SQL是计算机的一门基础语言,无论在开发还是数据库管理上都是非常重要,最近总结归纳了一下相关知识,记录如下。 2,归纳 SQL是结构化查询语言。 关系数据库有三级模式结构。 基本表和视图一样都是关系。 举例…

ARP欺骗攻击利用之内网截取图片

Arp欺骗:目标ip的流量经过我的网卡,从网关出去。 Arp断网:目标ip的流量经过我的网卡 1. echo 1 >/proc/sys/net/ipv4/ip_forward 设置ip流量转发,不会出现断网现象 有时不能这样直接修改,还有另外一种方法 修…

图书商城系统

文章目录 图书商城系统一、项目演示二、项目介绍三、系统部分功能截图四、部分代码展示五、底部获取项目(9.9¥带走) 图书商城系统 一、项目演示 网上书城 二、项目介绍 基于SSM的图书商城网站 运行环境:idea或eclipse 数据库:mysql 开发语…

2402com,com管理引用计数的规则

原文 使用引用计数来管理对象的生命期,允许多个客户无需相互协调就获取并释放单个对象. 只要客户对象遵守某些使用规则,就会有效管理该对象.这些规则指定了如何管理对象间的引用.(COM不指定对象内部实现,尽管这些规则是对象内策略的合理起点.) 从概念上讲,可按在包含所有保存…

Python基础篇_修饰符(Decorators)【中】

上一篇:Python基础篇_修饰符(Decorators)【上】(decorator、classmethod、staticmethod) 下一篇:Python基础篇_修饰符(Decorators)【下】abc.abstractmethod、functools.singledispatch、contextlib.contex…

在面试中如何回复擅长vue还是react

当面试官问及这个问题的时候,我们需要思考面试官是否是在乎你是掌握vue还是react吗??? 在大前端的一个环境下,当前又有AI人工智能的加持辅助,我们是不是要去思考企业在进行前端岗位人员需求的时候&#xf…

骨科器械行业分析:市场规模为360亿元

骨科器械一般指专门用于骨科手术用的专业医疗器械。按国家食品药品监督局的分类划分常分为:一类;二类和三类。按照使用用途和性能主要分为骨科用刀、骨科用剪、骨科用钳、骨科用钩、骨科用针、骨科用刮、骨科用锥、骨科用钻、骨科用锯、骨科用凿、骨科用锉/铲、骨科…

Github 2024-02-04 开源项目日报 Top9

根据Github Trendings的统计,今日(2024-02-04统计)共有9个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Python项目6Ruby项目1HTML项目1C项目1Go项目1TypeScript项目1 Windows 终端、控制台和命令行存储库 创建周期…

数据库管理-第148期 最强Oracle监控EMCC深入使用-05(20240208)

数据库管理148期 2024-02-08 数据库管理-第148期 最强Oracle监控EMCC深入使用-05(20240208)1 性能主页2 ADDM Spotlight3 实时ADDM4 数据库的其他5 主机总结 数据库管理-第148期 最强Oracle监控EMCC深入使用-05(20240208) 作者&am…

跨平台监控管理工具ServerBee

大年初一,给各位拜年,恭祝大家龙年大吉,新春快乐~! 本文是应网友 博茨瓦纳 的要求折腾的; 什么是 ServerBee ? ServerBee 是一款支持跨平台集监控、管理和终端的效率工具,支持 Linux 、Windows …

微信小程序 民宿预订租赁系统uniApp

通过山青水磨APP办理租房相关业务,线上解决预定、退订的业务,旅客在使用时更加灵活,实现了快速找房,在线沟通、便捷租赁等操作,除此以外,还能帮助旅客获取周边资讯、当地特色活动服务,提升旅客的…