当前位置: 首页 > ds >正文

Uniapp 验证 HTTPS 协议

Uniapp 中 验证 HTTPS协议的是示例代码

<template><view class="content"><view style="margin-top: 20px;"><text>sslVerify : {{text}}</text></view><view><button @click="testSslVerify">sslVerify</button></view><view style="margin-top: 20px;"><text>testCaVerify : {{text}}</text></view><view><button @click="testCaVerify">testCaVerify</button></view><view style="margin-top: 20px;"><text>testCaCrtVerify : {{text}}</text></view><view><button @click="testCaCrtVerify">testCaCrtVerify</button></view><view class="uni-textarea" style="margin-top: 20px;"><textarea style="border: 1px solid red;" v-model="certificates" placeholder="占位符字体是红色的"/></view><view style="margin-top: 20px;"><text>customVerify : {{text}}</text></view><view><button @click="customVerify">customVerify</button></view></view>
</template><script>export default {data() {return {text: 'empty',certificates:"[{ 'host': '10.11.1.1', 'client': '',  'clientPassword': '', 'server': ['/static/ssl/server.crt'] }]"}},onLoad() {},methods: {testSslVerify() {uni.request({url: 'https://10.11.1.1/api/mobile/GetToken', //仅为示例,并非真实接口地址。data: {qRcodeId: 'qRcodeId',deviceId: 'deviceId'},sslVerify: false,success: (res) => {uni.showToast({title: 'success' + JSON.stringify(res),duration: 5000,icon: "none",})this.text = 'testSslVerify request success';},fail: (res) => {uni.showToast({title: 'fail' + JSON.stringify(res),duration: 5000,icon: "none",})},complete(res) {uni.showToast({title: 'complete' + JSON.stringify(res),duration: 5000,icon: "none",})}});},testCaVerify(){uni.configMTLS({certificates: [{'host': 'https://10.11.1.1','client': '/static/ssl/ca.p12','clientPassword': 'aaaaaaa','server': ['/static/ssl/server.cer'],}],success ({code}) { uni.showToast({title: "configMTLS success:" + JSON.stringify(code),duration: 5000,icon: "none",});},fail: (res) => {uni.showToast({title: 'configMTLS fail' + JSON.stringify(res),duration: 5000,icon: "none",})},});uni.request({url: 'https://10.11.1.1/api/mobile/GetToken', data: {qRcodeId: 'qRcodeId',deviceId: 'deviceId'},success: (res) => {uni.showToast({title: 'success' + JSON.stringify(res),duration: 5000,icon: "none",})this.text = 'testCaVerify request success';},fail: (res) => {uni.showToast({title: 'fail' + JSON.stringify(res),duration: 5000,icon: "none",})},complete(res) {uni.showToast({title: 'complete' + JSON.stringify(res),duration: 5000,icon: "none",})}});},testCaCrtVerify(){uni.configMTLS({certificates: [{'host': 'https://10.11.1.1','client': '/static/ssl/ca.p12','clientPassword': 'abxcddddd','server': ['/static/ssl/server.crt'],}],success ({code}) { uni.showToast({title: "configMTLS success:" + JSON.stringify(code),duration: 5000,icon: "none",});},fail: (res) => {uni.showToast({title: 'configMTLS fail' + JSON.stringify(res),duration: 5000,icon: "none",})},});uni.request({url: 'https://10.11.1.1/api/mobile/GetToken', data: {qRcodeId: 'qRcodeId',deviceId: 'deviceId'}, success: (res) => {uni.showToast({title: 'success' + JSON.stringify(res),duration: 5000,icon: "none",})this.text = 'testCaCrtVerify request success';},fail: (res) => {uni.showToast({title: 'fail' + JSON.stringify(res),duration: 5000,icon: "none",})},complete(res) {uni.showToast({title: 'complete' + JSON.stringify(res),duration: 5000,icon: "none",})}});},customVerify(){ uni.configMTLS({certificates: this.certificates,success ({code}) { uni.showToast({title: "configMTLS success:" + JSON.stringify(code),duration: 5000,icon: "none",});},fail: (res) => {uni.showToast({title: 'configMTLS fail' + JSON.stringify(res),duration: 5000,icon: "none",})},});uni.request({url: 'https://10.11.1.1/api/mobile/GetToken', data: {qRcodeId: 'qRcodeId',deviceId: 'deviceId'},success: (res) => {uni.showToast({title: 'success' + JSON.stringify(res),duration: 5000,icon: "none",})this.text = 'customVerify request success';},fail: (res) => {uni.showToast({title: 'fail' + JSON.stringify(res),duration: 5000,icon: "none",})},complete(res) {uni.showToast({title: 'complete' + JSON.stringify(res),duration: 5000,icon: "none",})}});}}}
</script><style>.content {display: flex;flex-direction: column;align-items: center;justify-content: center;}.logo {height: 200rpx;width: 200rpx;margin-top: 200rpx;margin-left: auto;margin-right: auto;margin-bottom: 50rpx;}.text-area {display: flex;justify-content: center;}.title {font-size: 36rpx;color: #8f8f94;}
</style>
http://www.xdnf.cn/news/16951.html

相关文章:

  • JVM指针压缩的那些事
  • 永洪科技华西地区客户交流活动成功举办!以AI之力锚定增长确定性
  • 15day-人工智学习-机器学习-介绍和定义
  • vue+element 实现下拉框共享options
  • HFSS许可管理自动化工具
  • JAVA并发编程工具
  • [echarts] 更新数据
  • ForCenNet:文档图矫正迎来新SOTA(2025)
  • Wisdom SSH开启高效管理服务器的大门
  • ceph 14.2.22 nautilus Balancer 数据平衡
  • RK3588实现wlan直连
  • 一致连续性背后的直觉是什么?
  • 【通用视觉框架】基于QT+Halcon开发的流程拖拽式通用视觉框架软件,全套源码,开箱即用
  • windows mamba-ssm环境配置指南
  • 洛谷P4479第K大斜率
  • c#保留小数点后几位 和 保留有效数字
  • 【智能体agent】入门之--4.1 autogen agentic rag
  • C++继承中虚函数调用时机问题及解决方案
  • CG--逻辑判断1
  • 译 | BBC Studios团队:贝叶斯合成控制方法SCM的应用案例
  • C++ --- stack和queue的使用以及简单实现
  • 第三章 网络安全基础(一)
  • PendingIntent相关流程解析
  • 京东零售在智能供应链领域的前沿探索与技术实践
  • 逻辑回归召回率优化方案
  • 《协作画布的深层架构:React与TypeScript构建多人实时绘图应用的核心逻辑》
  • 插件升级:Chat/Builder 合并,支持自定义 Agent、MCP、Rules
  • Spring Boot 2.1.18 集成 Elasticsearch 6.6.2 实战指南
  • 使用GPU和NPU视频生成的优劣对比
  • 修改DeepSeek翻译得不对的V语言字符串文本排序程序