在客户端和备忘录中获取HTTP命令

问题描述 投票:0回答:1

你好

我想使用“获取”命令,例如:

Get https://api.demo.website.com/api/2/public/something

这是公共信息,不需要身份验证。

[当我在浏览器中使用URL时,我也收到了正确的响应,同样在我的另一个软件中,我将下面的代码复制粘贴到下面,始终在备忘录中显示平淡的结果。

也许我会从头开始避免该错误,但是有人可以告诉我此代码是否有问题吗?

TMemoryStream *Response=new TMemoryStream;
TNameValueArray nva;
NetHTTPRequest1->URL=URLEdit->Text;
NetHTTPRequest1->Get(URLEdit->Text, Response, nva);
Memo1->Lines->LoadFromStream(Response);
c++ windows delphi builder
1个回答
1
投票

Get()完成向MemoryStream的写入时,流的Position留在流的end上,因此没有可供加载的备注数据。您需要先将Position重置为beginning,然后再将流加载到备忘录中:

NetHTTPRequest1->Get(URLEdit->Text, Response, nva);
Response->Position = 0; // <-- ADD THIS
Memo1->Lines->LoadFromStream(Response);
© www.soinside.com 2019 - 2024. All rights reserved.