当前位置: 首页 > news >正文

Delphi 12.2.1 idhttpserver的使用方法

Delphi 12.2.1 idhttpserver的使用方法

1)CommandGet(AContext: TIdContext; ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo);事件

该事件和IDTCPSERVER的EXECUTE()事件一样,都是“线程方法”,即事件是在子线程里面执行的,在其内书写代码要注意“线程保护”。

该事件可以接受客户端HTTP GET、POST或其他HTTP方法请求。

if SameText(ARequestInfo.Command, 'post') then    // http post方法

else if SameText(ARequestInfo.Command, 'get') then    // http get方法

2)获取URL参数

ARequestInfo.Params.Values['sql']

3)回复客户端

回复客户端流

AResponseInfo.ContentStream := LFiredac.QuerySQL(ARequestInfo.Params.Values['sql'], ARequestInfo.Params.Values['storageformat']);  // 流
AResponseInfo.WriteContent;

回复客户端字符串

AResponseInfo.ContentText := LFiredac.SaveData(ARequestInfo.Params.Values['tablename'], ARequestInfo.PostStream, ARequestInfo.Params.Values['storageformat']);
AResponseInfo.WriteContent;

4)回复客户端中文字符串不乱码

AResponseInfo.ContentText := LFiredac.RestQuery(ARequestInfo.Params.Values['sql']);
AResponseInfo.ContentType := 'text/html; charset=GB2312';
AResponseInfo.WriteContent;

5)PostStream(AContext: TIdContext; AHeaders: TIdHeaderList; var VPostStream: TStream);事件

如果要接受客户端发过来的流,则在此事件中要写如下代码:

begin
VPostStream := TMemoryStream.Create; 
end;

http://www.lryc.cn/news/496949.html

相关文章:

  • 【golang】单元测试,以及出现undefined时的解决方案
  • jmeter 压测常用静默参数解释应用
  • 【开源】A059-基于SpringBoot的社区养老服务系统的设计与实现
  • 《智能体雏形开发(高阶实操)》开发计划概述
  • QT学习笔记-QStringList,QTimer
  • 如何使用brew安装phpredis扩展?
  • 游戏引擎学习第25天
  • 多线程运行时,JVM(Java虚拟机)的内存模型
  • kernel crash数据解析
  • CLIP模型也能处理点云信息
  • 利用若依代码生成器实现课程管理模块开发
  • 用Python做数据分析环境搭建及工具使用(Jupyter)
  • SpringBoot实战(三十二)集成 ofdrw,实现 PDF 和 OFD 的转换、SM2 签署OFD
  • linux环境人大金仓数据库修改密码
  • 使用ESP32通过Arduino IDE点亮1.8寸TFT显示屏
  • Spring Cloud Alibaba(六)
  • 【包教包会】CocosCreator3.x——重写Sprite,圆角、3D翻转、纹理循环、可合批调色板、不影响子节点的位移旋转缩放透明度
  • jupyter-lab 环境构建
  • 【C++】LeetCode:LCR 026. 重排链表
  • 【Linux】vim编辑器
  • delphi 12 idhttpsever(S)+idhttp(C) 实现简单的JSON API服务
  • JVM 主副内存 详解
  • sscanf与sprintf函数
  • 【k8s】创建基于sa的token的kubeconfig
  • Gentoo Linux部署LNMP
  • 2411C++,CXImage简单使用
  • 什么是 Kubernetes(K8s)?
  • 深入解析:TypeScript 与 Vue 的完美结合
  • 机器学习周志华学习笔记-第13章<半监督学习>
  • 软件工程——期末复习(1)