首页 > 其他分享 >Rust actix-web框架

Rust actix-web框架

时间:2023-10-09 17:34:49浏览次数:31  
标签:body web actix fn io HttpResponse Rust

目录

Github

官方文档

设置国内镜像

cd ~/.cargo
# 创建config文件
vim config
# 添加如下镜像源
[source.crates-io]
registry = "https://github.com/rust-lang/crates.io-index"
replace-with = 'ustc'
[source.ustc]
registry = "git://mirrors.ustc.edu.cn/crates.io-index"

添加依赖

[dependencies]
actix-web = "4"

官方示例

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!")
}

#[actix_web::main]
async fn main() -> std::io::Result<()> {
    HttpServer::new(|| {
        App::new()
            .service(hello)
            .service(echo)
            .route("/hey", web::get().to(manual_hello))
    })
    .bind(("127.0.0.1", 8080))?
    .run()
    .await
}

下载依赖并编译运行

cargo run

标签:body,web,actix,fn,io,HttpResponse,Rust
From: https://www.cnblogs.com/wufengsheng/p/17752265.html

相关文章

  • 00webpack之前期准备
    1环境准备1.1安装git(可选)Git官网下载地址Git安装步骤1.2安装nodeNode官网下载地址安装完成后,查看node版本node-vnpm是随同node一起安装的包管理工具,安装完node以后,就可以直接使用了安装淘宝镜像:使用cnpm命令(可选)npminstall-gcnpm--registry=https://......
  • 01webpack基础知识
    1概述1.1什么是webpack1、webpack是一种前端资源构建工具,一个静态模块打包器(modulebundler)。在webpack看来,前端的所有资源文件(js/json/css/img/less/...)都会作为模块处理。它将根据模块的依赖关系进行静态分析,打包生成对应的静态资源(bundle)2、webpack是一个前......
  • Web App Manifest
    主要作用在启动web应用程序和加载应用程序的内容之间创建了一个平滑的过渡。使用方式<linkrel="manifest"href="/manifest.json"/>manifest.json{"name":"HackerWeb","short_name":"HackerWeb","start_url":......
  • 使用 Webpack 的 require.context 来获取组件
    代码constrequireComponent=require.context('@/views',//组件文件夹的相对路径true,//是否查找子文件夹/\.vue$///匹配组件文件的正则表达式)输出console.log(requireComponent.keys())原理require.context在生产环境中也能获......
  • WriteUp-CTF-Web
    代码审计simple_php来源:攻防世界考点:php代码审计之数字与字符串的比较工具:手工难度:⭐分析过程打开场景,分析代码构造payload:?a="0"&b=12345s反序列化unserialize3来源:攻防世界考点:php反序列化漏洞、__wakeup()函数的绕过机制工具:手工难......
  • webpack配置删除console
    1.删除所有的console.logvue.config.js:module.exports=defineConfig({configureWebpack:(config)=>{//删除consoleconfig.optimization.minimizer[0].options.minimizer.options.compress=Object.assign(config.optimization.minimizer[0]......
  • ctfshow web859_有跳板机
    ctfshowweb859_有跳板机使用xshell连接执行sudo-spython3-c'importpty;pty.spawn("/bin/bash")'想用sftp传输fscan,失败利用ssh传输[email protected]:/tmpifconfig查看内网网段然后fscan扫描./fscan_386-h172.......
  • WebForm后端调用前端JS
    /*注意:定义的js方法一定要放在head里面,不能放下面,否则不生效*/<%@PageLanguage="C#"AutoEventWireup="true"CodeBehind="WebForm1.aspx.cs"Inherits="WebFormBackEndCallFrontJsDemo.WebForm1"%><!DOCTYPEhtml><htmlxmlns=&qu......
  • -webkit-text-size-adjust的用法
    1、Chrome浏览器默认情况下的字体最小为12px,如果你要设置某字体大小为10px的话,你会在Chrome发现还是12px。如果要使此生效的话,就得修改Chrome的默认配置了,一般应用下面的代码就能在全局生效了:html{-webkit-text-size-adjust:none;}但是这样设置之后会有一个问题,就是当你放......
  • 【webapp】jsp EL 的基本语法和用法
    EL(表达式语言)是用于在JSP页面中访问和操作数据的简洁表达式语言。EL提供了一种简化和统一的方式来访问变量、属性、集合和其他对象。以下是EL的基本语法和用法:基本语法:${expression}:用于在JSP页面中嵌入EL表达式。${object.property}:访问对象的属性。${map.key}:访......