TFPHttpServer
TFPHttpServer
TFPHttpServer是lazarus自带的http服务端控件。laZARUS可以用它来开发中间件。
uses fphttpserver
procedure TfpHttpSVR.request(Sender: TObject; var ARequest: TFPHTTPConnectionRequest; var AResponse: TFPHTTPConnectionResponse); // /rest/units/qry/{accountno}/{key} var arr: tstringarray; begin AResponse.CustomHeaders.Add('Access-Control-Allow-Origin:*'); //cross domain arr := ARequest.URL.Split(['/']); if arr[1] = 'rest' then AResponse.ContentType := 'application/json; charset=UTF-8' //ContentType else if arr[1] = 'pb' then AResponse.ContentType := 'application/octet-stream; charset=UTF-8'; //ContentType handlefunc(ARequest, AResponse, '/rest/tables/qry', @rest.test2.tablesQry); handlefunc(ARequest, AResponse, '/rest/goods/qry', @rest.test2.goodsQry); handlefunc(ARequest, AResponse, '/rest/units/edit', @rest.test2.unitsEdit); handlefunc(ARequest, AResponse, '/rest/units/add', @rest.test2.unitsAdd); handlefunc(ARequest, AResponse, '/rest/units/delete', @rest.test2.unitsDel); handlefunc(ARequest, AResponse, '/pb/tables/qry', @pb.test.tablesQry); handlefunc(ARequest, AResponse, '/pb/units/add', @pb.test.unitsAdd); handlefunc(ARequest, AResponse, '/pb/units/edit', @pb.test.unitsEdit); handlefunc(ARequest, AResponse, '/pb/units/delete', @pb.test.unitsDel); end;
procedure TWebModul.DoHandleRequest(Sender: TObject; var ARequest: TFPHTTPConnectionRequest; var AResponse: TFPHTTPConnectionResponse); var file1: TMemoryStream; begin file1 := TMemoryStream.Create; {...} if {ARequest.ContentFields.Values=} true then begin fromspreadsheet(file1); //from the spreadsheet unit AResponse.FreeContentStream:= true; AResponse.ContentStream :=file1; AResponse.ContentType:=htmlcontenttype('.html'); //:='text/html;charset=utf-8' AResponse.Code:=200; AResponse.SendContent; end; {...} file1.Free; end;
本文来自博客园,作者:{咏南中间件},转载请注明原文链接:https://www.cnblogs.com/hnxxcxg/p/15985652.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
2020-03-09 开发unigui控件
2019-03-09 咏南中间件支持图形验证码
2018-03-09 DELPHI开发LINUX桌面程序
2017-03-09 咏南APP(手机)开发框架
2016-03-09 DELPHI新版本WEBSERVICE的变化
2016-03-09 泛型字典
2016-03-09 泛型队列