Tinyfox 简易教程之:Hello World!
一,什么是 Tinyfox:
Tinyfox 是一款自带 HTTP 服务器的以 WebApi、WebSocket 及“动态HTML”为核心功能的超轻量级的独立性极强的高性能 Web 应用程序基础框架。
Tinyfox 简单易用,性能强劲,跨平台,既支持 Linux 也支持 Windows,既支持 x86 硬件环境,也支持 ARM、LoongArch 等 CPU 环境。同时,Tinyfox既支持传统的 .NET Framework环境,也支持 .NET6 以上的“.NET新世界”,对各种.NET项目都有很好的适应能力。
另外,Tinyfox 自身已经去除了影响 .NET 程序“Native化”的各种因素,所以,Tinyfox 能很好地支持 .NET NativeAOT,这个特点为基于 Tinyfox 开发高性能、高价值的商用程序提供了关键性的基础条件。
二,Tinyfox的使用场景:
根据 Tinyfox 的自身特点,Tinyfox 适合于在下列场景中使用:
- 快速开发、快速部署或者需要大量节省开发投入和运营成本的网络服务程序开发场景;
- WebAPI、微服务场景。可以做得“小而精、小而快”是 Tinyfox 的最大特点之一,因此在高性能 WebApi、微服务等场景中,Tinyfox 是非常合适的选择;
- 信息及数据双向及时交互场景,比如开发各种在线交互类服务程序、网络游戏软件的后端服务程序等等;
- 因为Tinyfox内置“动态HTML”功能,因为,Tinyfox也能用于网站项目的快速建设场景;
- 对关键源码保护级别要求很高的或商业性质的网络服务程序开发场景,因为 Tinyfox 已经从基础层面避开了破坏程序“Native化”的各种因素;
- 对程序大小、独立性、稳定性要求很高的应用场景,比如开发出提供给工控设备、物联网设备、机顶盒设备使用的网络服务程序;
- 大并发、高负载的网络服务场景。
- 跨平台场景。
三,Tinyfox的获取:
Tinyfox 是一款免费组件,通过 www.nuget.org 公开发布,开发者可以直接在 Visual Studio 中通过 nuget 管理器直接引用。
四,Hello World:
1,启动 Visual Studio(Visual Studio),创建一个控制台项目,假设项目名称为TinfoxTest:

2,在项目中,添加Tinyfox引用:


3,在该项目的 Program.cs 的“Main()”方法中添加代码:

4,(按F5)启动该程序:

5,打开浏览器访问,查看效果:

五,小节
从上属示例项目创建过程中可以看出,创建一个Tinyfox Web服务项目包括如下步骤:
1,在VS中新建 .NET/c# 项目,可以是控制台类型的,也可以是WinForm类型的;
2,在VS中,用 NuGet 包管理器浏览并安装 Tinyfox 包;
3,在代码中 using Tinyfox、Tinyfox.WebApiEngine、Tinyfox.WebApiEngine.Results 等名字空间;
4,在程序 Main() 方法中,通过Fox静态类的属性对Tinyfox的服务端口、绑定的IP地址、上传文件大小限制等等运行参数进行配置(如果有必要的话);
5,通过 Fox.Router 属性设置路由(请求路径与处理方法之间的映射关系);
6,用 Fox.Start() 方法启动服务并用 Fox.WaitExit() 方法阻止程序直接退出(等候程序主动关闭或收到外部终止信号,如按下了 ctrl+c 键)。
Tinyfox 简易教程之:Hello World!的更多相关文章
- [转]搬瓦工教程之九:通过Net-Speeder为搬瓦工提升网速
搬瓦工教程之九:通过Net-Speeder为搬瓦工提升网速 有的同学反映自己的搬瓦工速度慢,丢包率高.这其实和你的网络服务提供商有关.据我所知一部分上海电信的同学就有这种问题.那么碰到了坑爹的网络服务 ...
- jQuery EasyUI教程之datagrid应用(三)
今天继续之前的整理,上篇整理了datagrid的数据显示及其分页功能 获取数据库数据显示在datagrid中:jQuery EasyUI教程之datagrid应用(一) datagrid实现分页功能: ...
- jQuery EasyUI教程之datagrid应用(二)
上次写到了让数据库数据在网页datagrid显示,我们只是单纯的实现了显示,仔细看的话显示的信息并没有达到我们理想的效果,这里我们丰富一下: 上次显示的结果是这样的 点击查看上篇:jQuery Eas ...
- jQuery EasyUI教程之datagrid应用(一)
最近一段时间都在做人事系统的项目,主要用到了EasyUI,数据库操作,然后抽点时间整理一下EasyUI的内容. 这里我们就以一个简洁的电话簿软件为基础,具体地说一下datagrid应用吧 datagr ...
- kali linux 系列教程之metasploit 连接postgresql可能遇见的问题
kali linux 系列教程之metasploit 连接postgresql可能遇见的问题 文/玄魂 目录 kali linux 下metasploit 连接postgresql可能遇见的问题. ...
- kali Linux系列教程之BeFF安装与集成Metasploit
kali Linux系列教程之BeFF安装与集成Metasploit 文/玄魂 kali Linux系列教程之BeFF安装与集成Metasploit 1.1 apt-get安装方式 1.2 启动 1. ...
- Kali Linux系列教程之OpenVas安装
Kali Linux系列教程之OpenVas安装 文 /玄魂 目录 Kali Linux系列教程之OpenVas安装 前言 1. 服务器层组件 2.客户层组件 安装过程 Initial setup ...
- Playmaker Input篇教程之PlayMaker菜单概述
Playmaker Input篇教程之PlayMaker菜单概述 Playmaker InputPlayMaker菜单概述 Playmaker插件被导入游戏项目以后,会自动为Unity编辑器添加一个名 ...
- Playmaker Input篇教程之Playmaker购买下载和导入
Playmaker Input篇教程之Playmaker购买下载和导入 Playmaker Input篇认识Playmaker Playmaker是Unity的插件,其标志如图1-1所示.开发者使用它 ...
- Xamarin Anroid开发教程之Anroid开发工具及应用介绍
Xamarin Anroid开发教程之Anroid开发工具及应用介绍 Xamarin开发Anroid应用介绍 如今智能手机已经盛行了好几年,而针对这些智能手机的软件开发也变得异常火热.但是在Andro ...
随机推荐
- Git学习【1】 -- 基本常用命令
目录 1.设置用户名 2.设置用户邮箱 3.初始化文件夹 4.如何修改文件 5.如何删除文件 6. 远程github操作 7. 设置密码 安装完Git,如何玩呢?下面是一些初始化和初级的常用命令. 新 ...
- 如何在wpf窗口中播放PPT。
前一段时间接到一个需求(大概内容讲一下): 将PPT播放窗口嵌入到我们的系统中,用自己系统控制PPT的播放,在PPT页面上可以手写将手写内容记录下来. 一开始,对于WPF还是一个彩笔的我是懵逼的.后来 ...
- ASP.NET Core 9.0 中新增的MapStaticAssets() 中间件
前言 在Core 9.0版本中新增的内容不算多,除了内置OpenAPI 外 应该就属MapStaticAssets中间件最有价值了,最初MapStaticAssets主要是为了解决Blazor静态资源 ...
- ant 表格中的分页属性
组件中添加 属性 :pagination="paginationProps" 定义paginationprops const paginationProps = reactive( ...
- ARCGIS 拓扑检查步骤与修正拓扑错误技巧
转自http://xygszsh.blog.163.com/blog/static/19221517201111831348533/,写得没有说多好,贵在详细. 将数据装载如个人地理数据库,用拓扑功能 ...
- 【字符串哈希+二分】AcWing3508 最长公共子串
题解 首先思考暴力枚举长度为 \(len∈[1, min(strlen(s), strlen(t))]\),最差情况下为字符串 \(s\) 和字符串 \(t\) 全为长度为 \(10000\) 的全英 ...
- 【Amadeus原创】更改域控域用户密码过期日期时间
1,打开服务管理器,点工具,选择Active Directory 管理中心 2,右键域名(本地)-属性 3,选择属性编辑器,把maxPwdAge 从90天改成180天.
- HttpClientFactory in ASP.NET Core 2.1 Part 3: 对处理器使用对外请求中间件
HttpClientFactory in ASP.NET Core 2.1 Part 3: 对处理器使用对外请求中间件 原文地址:https://www.stevejgordon.co.uk/http ...
- Qt/C++音视频开发80-ffmpeg实现srt推拉流/实时性非常好/音视频同步/支持格式众多
一.前言 目前互联网上的视频直播有两种,一种是基于RTMP协议的直播,这种直播方式上行推流使用RTMP协议,下行播放使用RTMP,HTTP+FLV或者HLS,直播延时一般大于3秒,广泛应用秀场.游戏. ...
- Qt/C++音视频开发57-切换音视频轨道/切换节目流/分别切换音频视频轨道
一.前言 对各种音视频文件格式的支持,是一个播放器的基础功能.一般的音视频文件只有1路流,比如音频文件只有1路音频流,视频文件只有1路音频1路视频流,实践过程中发现,还有一种ts格式的文件,可能有多路 ...