winhttp在DelphiXE10.2中的使用
1 unit Unit1; 2 3 interface 4 5 uses 6 Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, 7 Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, 8 WinHttp_TLB, //需要引入 9 ComObj; //需要引入 10 11 type 12 TForm1 = class(TForm) 13 Button1: TButton; 14 Memo1: TMemo; 15 procedure FormCreate(Sender: TObject); 16 procedure Button1Click(Sender: TObject); 17 private 18 { Private declarations } 19 public 20 { Public declarations } 21 Http: WinhttpRequest; 22 function HPost(PostUrl, Post: string): WideString; 23 end; 24 25 var 26 Form1: TForm1; 27 28 implementation 29 30 {$R *.dfm} 31 32 function TForm1.HPost(PostUrl, Post: string): WideString; 33 var 34 // Stream: TMemoryStream; 35 url, wStr: WideString; 36 begin 37 try 38 Url := PostUrl; 39 Http.Open('POST', url, EmptyParam); 40 // Http.SetRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); 41 Http.SetRequestHeader('Content-Type', 'application/json'); 42 Http.Option[6] := false; 43 Http.Send(OleVariant(Post)); 44 // stream := OleVariantToMemoryStream(http.ResponseBody); 45 // Stream.Position := 0; 46 wStr := Http.ResponseText; 47 // stream.Free; 48 except 49 // Stream.Free; 50 wStr := ''; 51 end; 52 result := wStr; 53 end; 54 55 procedure TForm1.Button1Click(Sender: TObject); 56 begin 57 Memo1.Text := HPost('https://mail.qq.com/', 'Post'); 58 end; 59 60 procedure TForm1.FormCreate(Sender: TObject); 61 begin 62 Http := CreateComObject(CLASS_WinHttpRequest) as WinHttpRequest; 63 Http.SetTimeouts(10000, 10000, 5000, 5000); 64 end; 65 66 end.
作者:疯狂Delphi
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.
欢迎关注我,一起进步!扫描下方二维码即可加我


【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何在 .NET 中 使用 ANTLR4
· 后端思维之高并发处理方案
· 理解Rust引用及其生命周期标识(下)
· 从二进制到误差:逐行拆解C语言浮点运算中的4008175468544之谜
· .NET制作智能桌面机器人:结合BotSharp智能体框架开发语音交互
· Cursor预测程序员行业倒计时:CTO应做好50%裁员计划
· 想让你多爱自己一些的开源计时器
· 大模型 Token 究竟是啥:图解大模型Token
· 用99元买的服务器搭一套CI/CD系统
· 如何在 .NET 中 使用 ANTLR4
2016-03-29 问题-Delphi2007编译时提示内存错误“sxs.dll. No Debug Info.ACCESS 0xXXXXX"