android - 如何在 Delphi TRESTClient 组件上配置 tls
问题描述
直升机,
我输入了如下代码,这段代码运行良好。通过使用 https 连接,我希望收到的数据包数据不能被 Wireshark 或 Android 上的数据包捕获应用程序等应用程序读取。
你如何配置客户端?
这是我的代码
procedure TForm1.Button1Click(Sender: TObject);
var
MyCompletionHandler: TCompletionHandler;
MyErrorCompletionHandler: TCompletionHandlerWithError;
begin
ShowLoadingIndicator(Self, True);
Memo1.Lines.Clear;
RESTClient1.BaseURL := 'https://reqres.in/';
RESTClient1.RaiseExceptionOn500 := False;
RESTClient1.SecureProtocols := [THTTPSecureProtocol.TLS12];
RESTRequest1.ClearBody;
RESTRequest1.Resource := 'api/users';
MyCompletionHandler := procedure
var i: Integer;
tJson: TJSONValue;
begin
Label1.Text := 'Complete!';
Memo1.Lines.Append('Header: ');
for I := 0 to RESTResponse1.Headers.Count-1 do
Memo1.Lines.Append(RESTResponse1.Headers.Strings[I]);
Memo1.Lines.Append('');
Memo1.Lines.Append('Body:');
tJson := TJSONObject.ParseJSONValue(RESTResponse1.Content);
try
memo1.Lines.Append(REST.Json.TJson.Format(tJson));
finally
FreeAndNil(tJson);
end;
HideLoadingIndicator(Self);
end;
MyErrorCompletionHandler := procedure(AObject: TObject)
begin
Label1.Text := 'Error!';
HideLoadingIndicator(Self);
end;
RESTRequest1.ExecuteAsync(MyCompletionHandler, True, True, MyErrorCompletionHandler);
end;
和这个用火猴制作的简单应用程序: 简单应用程序
解决方案
推荐阅读
- r - 如何对数据字符串中的唯一值进行字符串计数
- python - Python - 将 cmd 的标准输出与硬编码列表进行比较并打印单个匹配项,使每个匹配项成为不同的变量
- php - 通过在多站点中使用 publish_post 发送 ACF 前端表单标题
- python - Python plotly order facet_wrap 按特定方面
- mongodb - 在 MongoDB 中将 BinData 类型 3 数据转换为类型 4
- javascript - 使用 Javascript 检查动态表单上必需但未选择的单选选项 - 不确定为什么以下内容不起作用
- shell - zsh 替换 - $VAR 和 ${VAR} 有什么区别?
- ios - 使用 VoiceOver 在 iOS 14 上禁用 UIImageView 的图像识别
- python - AttributeError:模块“时间”在 MLFlow UI 中没有属性“时钟”
- sql - 基于其他列但有条件创建列