VB6、TwinBasic、Delphi調用SystemNetLib通路網絡(基于Curl庫)
HTTPClient對象(SystemNetLib.dll的Com庫對象)
說明
HTTP請求對象,支援Get/Post請求。
基于Curl庫,用Get/Post方法請求網址,傳回内容。
支援http和https協定。
支援gzip、deflate、br自動解壓
持續使用記憶體會不斷增長,達到一定峰值後不會繼續增長,使用完後記憶體自動回收
支援傳回響應頭
支援設定逾時時間
Get函數
參數
URL:網址,支援http和https
RequestHeaders:向網址發起的請求頭
ResponseHeaders:請求後得到的響應頭
IsUTF8:是否是UTF8編碼。0-非UTF8編碼,1-UTF8字元
ConnectTimeOut:連接配接逾時時間,機關秒
TimeOut:總逾時時間,機關秒
ResponseAutoDecode:是否自動解碼傳回内容。比如IsUTF8=1時,自動将UTF8結果字元解碼為Unicode字元
Post函數
參數
URL:網址,支援http和https
PostDatas:請求内容
RequestHeaders:向網址發起的請求頭
ResponseHeaders:請求後得到的響應頭
IsUTF8:是否是UTF8編碼。0-非UTF8編碼,1-UTF8字元
ConnectTimeOut:連接配接逾時時間,機關秒
TimeOut:總逾時時間,機關秒
PostDataAutoEncode:是否自動編碼請求内容。比如IsUTF8=1時,自動将Unicode請求字元轉碼為UTF8字元
ResponseAutoDecode:是否自動解碼傳回内容。比如IsUTF8=1時,自動将UTF8結果字元解碼為Unicode字元
VB6示例
Dim Client As HTTPClient
Set Client = New HTTPClient
txtLog.Text = Client.Get("https://www.baidu.com/")
Set Client = Nothing
運作結果
Delphi例子
procedure TForm1.Button1Click(Sender: TObject);
var
tNet:HTTPClient;
ResponseHeaders:WideString;
begin
Button1.Enabled:=False;
tNet:=CoHTTPClient.Create();
Memo1.Text:=tNet.Get('https://www.baidu.com/','',ResponseHeaders,1,5,60,1);
tNet:=nil;
Button1.Enabled:=True;
end;
運作結果
TwinBasic例子
Dim tNet As HTTPClient
Set tNet = New HTTPClient()
Text1.Text = tNet.Get("https://www.baidu.com/")
Set tNet = Nothing
運作結果