频道分类

Delphi IdHTTP Http.Get 获取json数据

作者:admin 来源: 日期:2020/2/7 15:22:38 人气: 标签:

 
unit Unit1;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls;

type
  TForm1 = class(TForm)
    Memo1: TMemo;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

uses
  IdBaseComponent,
  IdComponent,
  IdTCPConnection,
  IdTCPClient,
  IdHTTP,
  Math;



function Parse(text, sol, sag: string): String;    /// Function Author: Ali Zairov
begin
  Delete(text, 1, Pos(sol, text) + Length(sol) - 1);
  Result := Copy(text, 1, Pos(sag, text) - 1);
end;


Function WTemperature(APIID: String; City: String): String;
var
  XML: TStringList;
  Http: TIdHTTP;
begin
  XML := TStringList.Create;
  Http := TIdHTTP.Create(Nil);
  XML.Text := Http.Get('http://mobsec-dianhua.baidu.com/dianhua_api/open/location?tel=手机号');
 Result := Parse(XML.Text, 'location":', '}},');//Copy(Parse(XML.Text, 'location":', '}},'), 0, 10);
end;


procedure TForm1.Button1Click(Sender: TObject);
begin
Memo1.Text:=WTemperature('','');
end;

end.