gpt4 book ai didi

delphi - 如何读取 Indy IdHTTP get 的响应

转载 作者:行者123 更新时间:2023-12-03 01:18:32 27 4
gpt4 key购买 nike

我已经编写了代码以将 get 与 indy IdHTTP 组件一起使用

var
get_url: string;
resp: TMemoryStream;
begin
get_url := 'http://localhost/salesapp/is_run.php?ser=';
resp := TMemoryStream.Create;

IdHTTP1.Get(get_url+'v', resp);
memo1.Lines.LoadFromStream(resp);

此网址 http://localhost/salesapp/is_run.php?ser=v 返回 JSON 响应,但我不知道如何从 Delphi 读取它。

最佳答案

Get()退出时,流的Position位于流的末尾。在调用 LoadFromStream() 之前,您需要将 Position 重置回 0,否则它将不会加载任何内容:

var
get_url: string;
resp: TMemoryStream;
begin
get_url := 'http://localhost/salesapp/is_run.php?ser=';
resp := TMemoryStream.Create;
try
IdHTTP1.Get(get_url+'v', resp);
resp.Position := 0; // <-- add this!!
memo1.Lines.LoadFromStream(resp);
finally
resp.Free;
end;
end;

另一种方法是删除 TMemoryStream 并让 Get() 将 JSON 作为 String 返回:

memo1.Text := IdHTTP1.Get(get_url+'v');

关于delphi - 如何读取 Indy IdHTTP get 的响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28462696/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com