delphi中实现http请求和提交
在对接本地的一个药械监管系统使用实现的代码,编译环境delphi Xe7 ,使用类TIdHTTP实现网络的get请求和post提交
//设置组件的属性 procedure TfrmMain.SetHttpParam; begin idhtp1.HandleRedirects := True; // 允许头转向 idhtp1.ReadTimeout := 10000; idhtp1.Request.ContentType := 'application/x-www-form-urlencoded'; idhtp1.Request.CustomHeaders.Clear; idhtp1.Request.ContentEncoding := 'utf-8'; idhtp1.Request.CharSet := 'utf-8'; idhtp1.Request.AcceptLanguage := 'zh-CN,en,*'; idhtp1.Request.UserAgent := 'Windows'; idhtp1.Request.Connection := 'Keep-Alive'; end; //get请求用例 procedure TfrmMain.btn_GetClick(Sender: TObject); var aStream: TStringStream; apiName, url: string; // joInfo, joSub: ISuperObject; begin apiName := spr_ApiUrl + '/sm-web/api/udi/getUDI'; aStream := TStringStream.Create('', TEncoding.UTF8); getSign; url := apiName + '?currentPage=1&TYSHXYDM=' + spr_companyId + '&accessToken=' + spr_Sign + '×tamp=' + spr_TimeStamp; try idhtp1.get(url, aStream); aStream.Position := 0; mmo_Mess.Lines.Clear; mmo_Mess.Lines.Add(aStream.DataString); finally aStream.Free; end; end; //post请求用例 procedure TfrmMain.btn_PostClick(Sender: TObject); var sl: TStringList; aStream: TStringStream; url: string; begin url := spr_ApiUrl + '/sm-web/api/biz/add_commodity_stock'; aStream := TStringStream.Create('', TEncoding.UTF8); sl := TStringList.Create; try sl.Add('company_id=' + spr_companyId); sl.Add('sign=' + spr_Sign); sl.Add('timestamp=' + spr_TimeStamp); sl.Add('common_name=人工合成蛋白'); sl.Add('commodity_name=人工合成蛋白'); sl.Add('size=50mg/盒'); sl.Add('unit=盒'); sl.Add('approval_no=XR203397446488'); sl.Add('manufacturer_name=济南泰森制药'); sl.Add('num=10'); sl.Add('batch_no=20230601X'); sl.Add('manufacture_date=2022-01-30'); sl.Add('expiry_date=2026-12-31'); sl.Add('in_storage_date=2023-06-01 00:00:00'); sl.Add('customer_name=临沂华瑞医药公司'); sl.Add('repertory_name=01'); sl.Add('goodseat_no=01'); sl.Add('base_id=1'); sl.Add('upload_type=add'); idhtp1.Post(url, sl, aStream); aStream.Position := 0; mmo_Mess.Text := aStream.DataString; finally sl.Free; aStream.Free; end; end;
凡哥,别他妈吹牛逼了
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)