mormot2 笔记(二) Http服务的简单搭建

这篇具有很好参考价值的文章主要介绍了mormot2 笔记(二) Http服务的简单搭建。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

mormot2框架中有个THttpServer类,它有一个Router属性,定义如下:

  property Router: TUriRouter read fRoute; 

Router是添加路由的入口点,它有和http协议对应的get, post, put, delete等方法,这些方法可以添加路由,下面常用的get方法定义。

    procedure Get(const aUri: RawUtf8; const aExecute: TOnHttpServerRequest); overload;
  TOnHttpServerRequest = function(Ctxt: THttpServerRequestAbstract): cardinal of object;

这里我们不能像js中koa2类似的写法,除非我们写个helper类,给TUriRouter加个方法,然后就可以像koa2中的写法一样了,类似这样:

HttpServer.Router.getEx('/api/login', function(ctx, TXXXContext): Integer
begin
   //代码
end;

如果不想使用上面的方式写代码,我们可以按delphi WebModule的方式写,即写不同的TWebAction,  我们先定义TAbstractRoute抽象类,然后写不同的子类,代码类似这样:

TAbstractRout = class
protected
  FPreFix: string;  //路由前缀,很有必要, 以后/api2/login时,这里变动就行了。
FUrl: string;
FMethodType: string;
public procedure Execute(ctx: TXXXContext); virtual; abstract; end; TLoginRoute = class(TAbstractRout) public procedure Execute(ctx: TXXXContext); overide; end;

这样就能适配TUriRouter.Get方法了。

此外,我们也可以使用“贴标签”的方式来定义路由,即使用TCustomAttribute,这样就和JAVA等框架中的写法一样了,看个人的喜好吧。

 文章来源地址https://www.toymoban.com/news/detail-653332.html

到了这里,关于mormot2 笔记(二) Http服务的简单搭建的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Nodejs快速搭建简单的HTTP服务器,并发布公网远程访问

    转载自内网穿透工具的文章:使用Nodejs搭建HTTP服务,并实现公网远程访问「内网穿透」 Node.js 是能够在服务器端运行 JavaScript 的开放源代码、跨平台运行环境。Node.js 由 OpenJS Foundation(原为 Node.js Foundation,已与 JS Foundation 合并)持有和维护,亦为 Linux 基金会的项目。Node.js

    2024年02月05日
    浏览(24)
  • 使用Nodejs搭建简单的HTTP服务器 - 内网穿透公网远程访问

    🎉博客主页:小智_x0___0x_ 🎉欢迎关注:👍点赞🙌收藏✍️留言 🎉系列专栏:小智带你闲聊 🎉代码仓库:小智的代码仓库 Node.js 是能够在服务器端运行 JavaScript 的开放源代码、跨平台运行环境。Node.js 由 OpenJS Foundation(原为 Node.js Foundation,已与 JS Foundation 合并)持有和维

    2024年02月11日
    浏览(28)
  • 【内网穿透】使用Nodejs搭建简单的HTTP服务器 ,并实现公网远程访问

    目录 前言 1.安装Node.js环境 2.创建node.js服务 3. 访问node.js 服务 4.内网穿透 4.1 安装配置cpolar内网穿透 4.2 创建隧道映射本地端口 5.固定公网地址 Node.js 是能够在服务器端运行 JavaScript 的开放源代码、跨平台运行环境。Node.js 由 OpenJS Foundation(原为 Node.js Foundation,已与 JS Foundat

    2024年02月10日
    浏览(33)
  • node笔记_http服务搭建(渲染html、json)

    大家好,我是yma16,本期分享node搭建http服务的教程。

    2024年02月02日
    浏览(19)
  • [toolschain] 怎么运用git 嵌套git 管理(子文件夹中也有个git) 并且如何简单设置使用repo的笔记 本文是求助GPT的记录 实践有用

    Q:一个文件夹a,a中的文件被a中的git 1管理,同时与a平级有一个git2,怎么让git 也能管理到git1 的内容 A:如果你想让一个 Git 仓库(git2)也能管理另一个 Git 仓库(git1)的内容,你可以使用 Git 的子模块(submodule)功能。子模块允许一个 Git 仓库包含另一个 Git 仓库,使得你可

    2024年02月04日
    浏览(43)
  • Flask框架小程序后端分离开发学习笔记《2》构建基础的HTTP服务器

    Flask是使用python的后端,由于小程序需要后端开发,遂学习一下后端开发。本节提供一个构建简单的本地服务器的代码,仔细看注释,学习每一步的流程,理解服务器接收请求,回复响应的基本原理。 代码效果,运行之后,在浏览器输入:localhost:2000 总结 1.导入socket库:这个库

    2024年01月18日
    浏览(32)
  • mORMot 1.18 第07章 简单的读写操作

    本章描述了典型的数据读写操作。首先,我们将注意力集中在数据上,而不是函数。 读取操作返回一个TID,它是一个32位或64位整数(取决于你的内存模型),反映了表的信息。TID在表中的每一行都是唯一的。 ORM的新手可能会感到惊讶,但通常你不需要创建SQL查询来过滤请求

    2024年04月28日
    浏览(32)
  • Qt+QtWebApp开发笔记(一):QtWebApp介绍、下载和搭建基础封装http轻量级服务器Demo

    若该文为原创文章,转载请注明原文出处 本文章博客地址:https://hpzwl.blog.csdn.net/article/details/130631547 红胖子网络科技博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软硬结合等等)持续更新中… 上一篇:没有了 下一篇:《Qt+Q

    2024年02月05日
    浏览(31)
  • 【Nginx04】Nginx学习:HTTP核心模块(一)简单搭建

    前面就说过了,HTTP 模块是整个 Nginx 中最核心的模块。在这其中,它又有一部分最核心的模块,其实也就是在编译安装的时候,我们不装任何扩展就自带的模块。这一部分模块就像是基本的 PHP 语法一样,是最基础的,也是我们最需要重点掌握的内容。 今天先入个门,搭起简

    2024年02月12日
    浏览(40)
  • java基础 - 实现一个简单的Http接口功能自动化测试框架(HttpClient + TestNG)

    已知现在已经用Spring boot框架搭建了一个简单的web服务,并且有现成的Controller来处理http请求,以之前搭建的图书管理服务为例,BookController的源码如下: 在搭建一个Http接口功能自动化测试框架之前,我们需要思考几个问题: 1、http请求的发送,使用什么实现? 2、接口返回的

    2024年02月05日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包