让uniGUI支持https

今天在专家的帮助下,成功的让uniGUI支持https了。

首先,去申请个**的证书。我同事去阿里申请的,申请回是一个zip文件,里面有两个文件,一个扩展是per,一个key

然后,把这两个证书文件放到uniGUI应用的根目录下。因为我用的uniGUI独立的EXE文件应用,所以要这样。如果你用的ISAPI,那要安装到IIS中。

接下来,改造uniGUI代码:

复制代码
  SSL.SSLOptions.RootCertFile := '你的.pem';
  SSL.SSLOptions.CertFile := '你的.pem';
  SSL.SSLOptions.KeyFile := '你的.key';
  SSL.SSLOptions.Method := TIdSSLVersion.sslvTLSv1_2;
  SSL.SSLOptions.SSLVersions := [sslvTLSv1_2];
  SSL.SSLOptions.Mode := TIdSSLMode.sslmUnassigned;
  SSL.SSLOptions.VerifyMode := [];
  SSL.SSLOptions.VerifyDepth := 0;
  SSL.SSLPort := 8077;   //这里设置为0,用https默认端口 443.
  //self.SSL.SSLPassword := '';
  self.SSL.Enabled := true;

把上面代码写到procedure TuniServerModule.UniGUIServerModuleCreate事件中。

找到ssl两个dll文件,复制到uniGUI应用所在的目录,跟证书一样。这两个文件uniGUI带了,在uniGUI的安装目录可以找到,如:C:\Program Files (x86)\FMSoft\Framework\uniGUI\SSL\dll。

注意:这里分32位与64位的版本,应该与你的应用相同。

现在编译并运行应用,你就可以在浏览器中用https访问应用了!

如果用了HyperServer来部署应用,还需要配置一下HyperServer。

在服务端找到hyperServer所在目录,会找到hyper_server_ssl.cfg文件,打开他,参考上面的代码,设置即可。

再好象没什么需要设置的了。

相关推荐
智购科技自动贩卖机32 分钟前
自动售货机硬件主控方案选型实战:单片机、树莓派、ESP32怎么选?
人工智能·单片机·嵌入式硬件·物联网·网络协议·yolo·架构
凤山老林1 小时前
从 RestTemplate 到 HttpClient 5:Spring Boot HTTP 客户端性能调优与连接池治理
spring boot·后端·http
00后程序员张1 小时前
SSL Pinning 抓包抓不到明文?绕过证书固定的几种方案
网络协议·计算机网络·网络安全·ios·adb·https·udp
微硬创新2 小时前
不用换设备,也能接入智能系统:耐达讯自动化NY-B801网关的神奇功效
人工智能·网络协议·自动化·信息与通信
__zRainy__3 小时前
Node系列 · Node基础:https 模块
后端·网络协议·http·https·node.js
SeaTunnel4 小时前
从 JSON 到 JSONL,Apache SeaTunnel 如何解决HTTP 大数据传输的内存难题?
http·开源·json·apache·数据集成·seatunnel
80s77714 小时前
住宅代理解析:动态住宅IP与静态住宅IP如何选型?
网络·网络协议·tcp/ip
略略略咯咯18 小时前
网络协议-study
网络·网络协议
DLYSB_19 小时前
从监控告警到现场处置:用 HTTP API、Modbus TCP 构建声光语音告警系统
网络协议·tcp/ip·http·报警灯
爱学习的程序媛19 小时前
通信协议完整梳理
网络·网络协议·信息与通信·通信协议