草庐IT

rust-tokio

全部标签

30. 干货系列从零用Rust编写正反向代理,HTTP的组装之旅(中间件)

wmproxywmproxy已用Rust实现http/https代理,socks5代理,反向代理,静态文件服务器,四层TCP/UDP转发,七层负载均衡,内网穿透,后续将实现websocket代理等,会将实现过程分享出来,感兴趣的可以一起造个轮子项目地址国内:https://gitee.com/tickbh/wmproxygithub:https://github.com/tickbh/wmproxy旅程路线  大家好,我是这趟旅程的导游,可以叫我导游,我为大家来介绍HTTP的组装之旅。  大家好,我是这趟旅程的乘客,可以叫我小H,出来玩实在太开心了旅行开端首先导游带我来了码头,说是我接一位神秘

Rust Web入门(二):Actix

本教程笔记来自杨旭老师的rustweb全栈教程,链接如下:https://www.bilibili.com/video/BV1RP4y1G7KF?p=1&vd_source=8595fbbf160cc11a0cc07cadacf22951学习RustWeb需要学习rust的前置知识可以学习杨旭老师的另一门教程https://www.bilibili.com/video/BV1hp4y1k7SV/?spm_id_from=333.999.0.0&vd_source=8595fbbf160cc11a0cc07cadacf22951项目的源代码可以查看git:(注意作者使用的是mysql数据库而不是

如何在Rust中检索不同类型的DNS记录?

我需要发送DNS请求以检查域的A,AAAA,MX和SOA记录。有2个流行的DNS库:Trust-DNS和DNS-Parser。他们俩都没有一个例子。Trust-DNS不支持我需要做的事情,而DNS-Parser的文档无济于事。看答案这领域板条箱似乎支持您的用途。它还建立在期货之上,这对于所需的网络请求非常好。externcratedomain;externcratefutures;externcratetokio_core;usestd::str::FromStr;usedomain::bits::{DNameBuf,ParsedDName};usedomain::iana::{Class,R

Rust4.1 Managing Growing Projects with Packages, Crates, and Modules

Rust学习笔记Rust编程语言入门教程课程笔记参考教材:TheRustProgrammingLanguage(bySteveKlabnikandCarolNichols,withcontributionsfromtheRustCommunity)Lecture7:ManagingGrowingProjectswithPackages,Crates,andModulessrc/main.rs//src/main.rs:themainfileoftheproject,wherethemainfunctionisdefined;thisisthecrateroot//src/lib.rs:ther

听GPT 讲Rust源代码--src/librustdoc(2)

题图来自Chromium项目将支持Rust编程语言[1]File:rust/src/librustdoc/html/render/search_index.rs在Rust源代码中,rust/src/librustdoc/html/render/search_index.rs文件的作用是生成搜索索引,用于在Rust文档页面上进行关键字搜索。该文件实现了一个用于索引和搜索Rust文档的数据结构。CrateData结构体表示一个crate(库)的数据,包含了crate的名称、版本、模块的路径和包含的函数、结构体、枚举等信息。Paths结构体则用于保存crate中的所有路径以及路径的相关信息。Func

算法leetcode|89. 格雷编码(rust重拳出击)

文章目录89.格雷编码:样例1:样例2:提示:分析:题解:rust:go:c++:python:java:89.格雷编码:n位格雷码序列是一个由2n个整数组成的序列,其中:每个整数都在范围[0,2n-1]内(含0和2n-1)第一个整数是0一个整数在序列中出现不超过一次每对相邻整数的二进制表示恰好一位不同,且第一个和最后一个整数的二进制表示恰好一位不同给你一个整数n,返回任一有效的n位格雷码序列。样例1:输入: n=2 输出: [0,1,3,2] 解释: [0,1,3,2]的二进制表示是[00,01,11,10]。 -00和01有一位不同 -01和11有一位不同 -11和10有一位不同 -1

在win10上,配置 Rust 开发环境(使用 mingw64编译器) 和 idea 配置 Rust 插件

文章目录1、安装前的准备2、安装mingw642.1、编译器mingw与visualstudio之间的选择2.2、下载2.3、安装2.4、配置2.5、测试3、安装Rust3.1、从Rust的官网下载[rustup-init](https://win.rustup.rs/)3.2、配置国内镜像地址3.3、运行rustup-init3.4、验证3.5、rustup常用命令4、cargo配置4.1、配置cargo国内镜像4.2、cargo基础命令5、helloworld6、idea配置Rust插件6.1、下载Rust插件6.2、下载源码6.3、查看配置6.4、创建项目7、参考文章1、安装前的准备2、

29. 干货系列从零用Rust编写正反向代理,异步回调(async trait)的使用

wmproxywmproxy已用Rust实现http/https代理,socks5代理,反向代理,静态文件服务器,四层TCP/UDP转发,七层负载均衡,内网穿透,后续将实现websocket代理等,会将实现过程分享出来,感兴趣的可以一起造个轮子项目地址国内:https://gitee.com/tickbh/wmproxygithub:https://github.com/tickbh/wmproxy关于++trait++  trait是Rust中的概念,类似于其他语言中的接口(interface)。  在Rust中不存在继承的概念,所有关于结构体的拓展功能全部均由trait来代替。比如std:

Rust 语言中的结构体

目录1、结构体2、结构体的定义和实例化2.1使用字段初始化简写语法2.2使用结构体更新语法从其他实例创建实例2.3 没有命名字段的元组结构体2.4没有任何字段的类单元结构体2.5结构体示例程序3、方法3.1关联函数3.2 多个impl块1、结构体struct,或者 structure,是一个自定义数据类型,允许你包装和命名多个相关的值,从而形成一个有意义的组合。如果你熟悉一门面向对象语言,struct 就像对象中的属性。2、结构体的定义和实例化结构体和我们之前论过的元组类似,它们都包含多个相关的值。和元组一样,结构体的每一部分可以是不同类型。但不同于元组,结构体需要命名各部分数据以便能清楚的表