Delphi HTTP POST JSON示例


本文整理自网络,侵删。

 
在您的使用中添加以下库:
idSSLopenSSL,idHttp,Json
这是POST JSON数据的示例代码:

procedure TForm1.Button1Click(Sender: TObject);
var
  JsonStr: string;
  sResponse: string;
  JsonToSend: TStringStream;
  HTTP1: TidHTTP;
  F: TJSONObject;
begin
  Button1.Enabled := False;
  memoResponse.Lines.Clear;
  memoRequest.Lines.Clear;
 
  F := TJSONObject.Create;
  F.AddPair('applicationId', edApplication.Text);
  F.AddPair('applicationPassword', edPassword.Text);
  F.AddPair('accountId', edAccount.Text);
 
  JsonStr := F.ToJSON;
 
  memoRequest.Text := JsonStr;
 
  JsonToSend := TStringStream.Create(JsonStr, TEncoding.UTF8);
 
  HTTP1 := TIdHTTP.Create(nil);
 
  try
    HTTP1.Request.ContentType := 'application/json; charset=utf-8';
    HTTP1.Request.CharSet := 'utf-8';
    try
      sResponse := HTTP1.Post(edURL.Text, JsonToSend);
    except
      on E: Exception do
        ShowMessage('Error on request: '#13#10 + e.Message);
    end;
  finally
    FreeAndNil(HTTP1);
    FreeAndNil(JsonToSend);
    FreeAndNil(F);
  end;
 
  memoResponse.Text := sResponse;
 
  Button1.Enabled := True;
end;

您需要将OpenSSL DLL放在application.exe文件夹中:

libeay32.dll
ssleay32.dll

相关阅读 >>

Delphi 长文件路径转换短文件路径

Delphi获取网卡mac地址多个方法

Delphi webbroker standalone 模式下当作一个普通的 webserver 响应静态网页或其它文件的请求

Delphi winapi: writeprivateprofilestring、getprivateprofilestring - 简单读写 ini 文件

Delphi ip编辑控件

Delphi 获取时间日期

Delphi 类的声明

Delphi清除右下角的托盘上无用的托盘图标(刷新托盘)

xp/2003下Delphi最简单的方法开放3389

Delphi屏蔽win、ctrl_esc、alt_tab、alt_f4等键(windows xp、windows 2003 server下测试通过)

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...