小儿科问题,直接上流程代码:

 1 procedure TUniServerModule.UniGUIServerModuleHTTPCommand(
2 ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo;
3 var Handled: Boolean);
4 var
5 JSONData: TBytes;
6 JSONString: string;
7 begin
8 // Result := False;
9
10 // 判断路径是否是 /queryData
11 if ARequestInfo.URI = '/queryData' then
12 begin
13 // 处理GET请求
14 if ARequestInfo.Command = 'GET' then
15 begin
16 AResponseInfo.ContentText := '成功接收GET请求,参数为:' + ARequestInfo.Params.Text;
17 AResponseInfo.ResponseNo := 200; // HTTP 200 OK
18 Handled := True;
19 // Result := True;
20 end
21 // 处理POST请求
22 else if ARequestInfo.Command = 'POST' then
23 begin
24
25 // 确保 PostStream 有数据
26 if Assigned(ARequestInfo.PostStream) then
27 begin
28 // 将PostStream转换为字节数组
29 SetLength(JSONData, ARequestInfo.PostStream.Size);
30 ARequestInfo.PostStream.Position := 0; // 重置流位置
31 ARequestInfo.PostStream.ReadBuffer(JSONData[0], ARequestInfo.PostStream.Size);
32
33 // 使用 UTF-8 将字节数组转换为字符串
34 JSONString := TEncoding.UTF8.GetString(JSONData);
35
36 AResponseInfo.ContentText := '成功接收POST请求,JSON参数为:' + JSONString;
37 AResponseInfo.ResponseNo := 200; // HTTP 200 OK
38 end
39 else
40 begin
41 AResponseInfo.ContentText := 'POST请求没有包含任何数据';
42 AResponseInfo.ResponseNo := 400; // HTTP 400 Bad Request
43 end;
44
45
46
47 Handled := True;
48 end
49 else
50 begin
51 AResponseInfo.ContentText := '不支持的请求方法';
52 AResponseInfo.ResponseNo := 405; // HTTP 405 Method Not Allowed
53 Handled := True;
54 // Result := True;
55 end;
56 end
57 else
58 begin
59 // AResponseInfo.ContentText := '404 - 未找到路径';
60 // AResponseInfo.ResponseNo := 404; // HTTP 404 Not Found
61 end;
62 end;

结果:

学习unigui【28】UniGUI接收POST/GET的更多相关文章

  1. Python的入门学习Day 28~30——form”夜曲编程“

    Day 28 in Day 29 time: 2021.8.26. ​ 时间模糊了界限,虽我日渐走远.转眼而过的二十多天,既留下了夏天在沙滩上的足迹,同时也为黄金色的秋日铺上留白的画卷.键盘敲时,熟悉 ...

  2. iOS阶段学习第28天笔记(UIView的介绍)

    iOS学习(UI)知识点整理 一.关于UIVIew 的介绍 1)概念:UIView 是用于装载并展示各类控件的大容器,是iOS中所有UI控件的基类 2)UIView  初始化实例代码 UIView * ...

  3. struts2视频学习笔记 28(OGNL表达式)

    课时28 OGNL表达式 OGNL是Object Graphic Navigation Language(对象图导航语言)的缩写,它是一个开源项目. Struts 2框架使用OGNL作为默认的表达式语 ...

  4. Android学习系列(28)--App集成支付宝[已过期]

    手机的在线支付,被认为是2012年最看好的功能,我个人认为这也是移动互联网较传统互联网将会大放光彩的一个功能.人人有手机,人人携带手机,花钱买东西,不再需要取钱付现,不再需要回家上网银,想买什么,扫描 ...

  5. Linux学习笔记28——消息队列

    一 关于消息队列 消息队列提供了一种从一个进程向另一个进程发送一个数据块的方法,而且,每个数据块都被认为含有一个类型,接收进程可以独立地接受含有不同类型值的数据块.可以通过发送消息来几乎完全避免命名管 ...

  6. 《第一行代码》学习笔记28-内容提供器Content Provider(1)

    1.内容提供器:用于在不同的应用程序之间实现数据共享的功能,提供了一套完整的机制,允许一个程序访问另一个程序中的数据,同时还能保证被访问 数据的安全性.使用内容提供器是Android实现跨程序共享数据 ...

  7. Kali学习笔记28:Burpsuite(下)

    文章的格式也许不是很好看,也没有什么合理的顺序 完全是想到什么写一些什么,但各个方面都涵盖到了 能耐下心看的朋友欢迎一起学习,大牛和杠精们请绕道 扫描: 上一篇介绍到了爬网,那么到这里我以及爬取了一个 ...

  8. Android学习之发送及接收广播

    1.使用标准广播 1.1 定义广播接收器 public class MyBroadcastReceiver extends BroadcastReceiver { @Override public v ...

  9. scala学习手记28 - Execute Around模式

    我们访问资源需要关注对资源的锁定.对资源的申请和释放,还有考虑可能遇到的各种异常.这些事项本身与代码的逻辑操作无关,但我们不能遗漏.也就是说进入方法时获取资源,退出方法时释放资源.这种处理就进入了Ex ...

  10. C语言实例解析精粹学习笔记——28

    实例28:从键盘读入实数 题目要求: 编制一个从键盘读入实数的函数readreal(double *rp).函数将读入的实数字符列转换成实数后,利用指针参数rp,将实数存于指针所指向的变量*rp. 思 ...

随机推荐

  1. Solution Set - Codeforces Global Round 1~8

    目录 Codeforces Global Round 1 A. Parity B. Tape C. Meaningless Operations D. Jongmah E. Magic Stones ...

  2. nginx 简单实践:静态资源部署、URL 重写【nginx 实践系列之一】

    〇.前言 本文为 nginx 简单实践系列文章之一,主要简单实践了两个内容:静态资源部署.重写,仅供参考. 关于 Nginx 基础,以及安装和配置详解,可以参考博主过往文章: https://www. ...

  3. Elasticsearch(5) --- 基本命令(集群相关命令、索引CRUD命令、文档CRUD命令)

    这篇博客的命令分为ES集群相关命令,索引CRUD命令,文档CRUD命令.这里不包括Query查询命令,它单独写一篇博客. 一.ES集群相关命令 ES集群相关命令主要是_cat命令,所以这里详细讲解下该 ...

  4. LeetCode 未验证规则

    1. for循环容易忘记break,很多提交不过,都是因为这个 2. 左右指针,思考起来比较复杂,但是以代码容易理解.code精简为主,不要在乎省下一两次运算时间 3. 左右指针,有时候以left & ...

  5. UNIDAC中TDataSet组件CachedUpdates属性使用

    官方方法组合示例,使用UpdatesPending属性可判断是否有修改在缓存区中

  6. dart安装教程详解

    官网 https://dart.dev 关于发布通道和版本字符串 Dart SDK有三个发布通道: 1==>:稳定释放,大约每三个月更新一次: 稳定释放适合生产使用. 2==>:预览发布, ...

  7. auto-wing将AI应用于自动化项目

    GitHub: https://github.com/SeldomQA/auto-wing 背景:我们之前介绍过 midsence.js AI自动化测试辅助工具,midsence.js的思路我个人是比 ...

  8. Qt Quick 实现一个右下角弹出消息的组件

    目录 开发环境 简介 预览图 如何使用 代码 main.qml MessageView.qml Background.qml ScroolBar.qml MessageQueueView.qml 开发 ...

  9. Python 与 PostgreSQL 集成:深入 psycopg2 的应用与实践

    title: Python 与 PostgreSQL 集成:深入 psycopg2 的应用与实践 date: 2025/2/4 updated: 2025/2/4 author: cmdragon e ...

  10. Q:windows server2019由于没有远程桌面授权服务器可以提供许可证,远程回话连接已断开

    由于没有远程桌面授权服务器可以提供许可证,远程回话连接已断开,请跟服务管理员联系 原因是服务器安装了远程桌面服务RemoteApp,这个是需要授权的.但是微软官方给予了120天免授权使用,超过120天 ...