检测前端是否可以ping通后端返回的ip地址
检测前端是否可以ping通后端返回的ip地址
- 前端检测是否可ping通ip地址(PC端)
- 前端检测是否可ping通ip地址(uniapp小程序端)
前端检测是否可ping通ip地址(PC端)
// 前端检测是否可ping通ip地址
pingFn(ips) {let promiseArr = [];ips.forEach(ip=>{// debuggerlet pro = new Promise((res, rej)=>{let img = new Image();let start = new Date().getTime();img.src = 'https://' + ip + '?t=' + start;img.onload = function() {res({code:200,status: true,ip});};img.onerror = function() {res({code:200,status: true,ip});};let timer = setTimeout(()=>{clearTimeout(timer);rej();}, 1500);}).catch((e) => {});promiseArr.push(pro);});return Promise.any(promiseArr);
},
前端检测是否可ping通ip地址(uniapp小程序端)
// 前端检测是否可ping通ip地址
pingFn(ips) {let promiseArr = [];ips.forEach(ip=>{let pro = new Promise((res, rej)=>{let start = new Date().getTime();let url = 'https://' + ip + '?t=' + start;uni.getImageInfo({ src: url, success: function (image) { res({code:200,status: true,ip});}, fail:function(err){ res({code:200,status: true,ip});} }); let timer = setTimeout(()=>{clearTimeout(timer);rej();}, 1500);}).catch((e) => {});promiseArr.push(pro);});return Promise.any(promiseArr);
},
async getData() {let a = await this.pingFn(['192.168.0.12','192.168.0.13']);// console.log('检测是否能ping通内网地址====',a)if(a){// 如果有返回值,则可以ping通}else{// 无返回值会返回undefined}// 根据返回值执行自己的后续操作
}
首先实现的是PC端功能,后粘贴到小程序里,发现实现不了,代码一行行定位后发现在new Image()那一步就已经走不下去了,后百度发现脚本不支持Image对象,将写法改一下即可。
参考文档:
1、vue2实现前端ping 后端给的ip地址是否可以ping通【https://blog.csdn.net/weixin_43845137/article/details/130371232】
2、uni-app在脚本中不支持Image对象?【https://ask.dcloud.net.cn/question/76390】
相关文章:
检测前端是否可以ping通后端返回的ip地址
检测前端是否可以ping通后端返回的ip地址 前端检测是否可ping通ip地址(PC端)前端检测是否可ping通ip地址(uniapp小程序端) 前端检测是否可ping通ip地址(PC端) // 前端检测是否可ping通ip地址 ping…...
SMART司马他法则(目标管理)
S代表具体(Specific),指绩效考核要切中特定的工作指标,不能笼统; M代表可度量(Measurable),指绩效指标是数量化或者行为化的,验证这些绩效指标的数据或者信息是可以获得的; A代表可实现(Attainable)&…...
【LeetCode】删除并获得点数
删除并获得点数 题目描述算法分析编程代码空间优化 链接: 删除并获得点数 题目描述 算法分析 编程代码 class Solution { public:int deleteAndEarn(vector<int>& nums) {const int N 10001;int arr[N] {0};for(const auto& n : nums){arr[n]n;}vector<in…...
SciencePub学术 | 传感器类重点SCIE征稿中
SciencePub学术 刊源推荐: 传感器类重点SCIE征稿中!信息如下,录满为止: 一、期刊概况: 传感器类重点SCIE 【期刊简介】IF:2.0-2.5,JCR3区,中科院4区; 【版面类型】正刊࿱…...
移动端开发基础总结
移动端学习总结 (适合于复习) 移动端基础 技术选型: 单独制作移动端页面(主流) 流式布局(百分比布局)flex弹性布局(强烈推荐)lessrem媒体查询布局混合布局 响应式页面兼容移动端(…...
小X学游泳(深搜)
第一题 题目描述 小X想要学游泳。 这天,小X来到了游泳池,发现游泳池可以用N行M列的格子来表示,每个格子的面积都是1,且格子内水深相同。 由于小X刚刚入门,他只能在水深相同的地方游泳。为此,他把整个游泳池…...
分布式协议与算法——拜占庭将军问题
拜占庭将军问题 背景:以战国时期为背景 战国时期,齐、楚、燕、韩、赵、魏、秦七雄并立,后来秦国的势力不断强大起来,成了东方六国的共同威胁。于是,这六个国家决定联合,全力抗秦,免得被秦国各个…...
MySQL数据库管理的基本原则和技巧
MySQL数据库是一种常用的关系型数据库管理系统,用于存储和管理大量的数据。在进行MySQL数据库管理时,有一些基本原则和技巧可以帮助我们更有效地管理数据库。 数据库设计原则: 合理规划数据表结构: 根据数据之间的关系和业务需求…...
SQL-每日一题【1193. 每月交易 I】
题目 Table: Transactions 编写一个 sql 查询来查找每个月和每个国家/地区的事务数及其总金额、已批准的事务数及其总金额。 以 任意顺序 返回结果表。 查询结果格式如下所示。 示例 1: 解题思路 1.题目要求我们查找每个月和每个国家/地区的事务数及其总金额、已批准的事务数…...
探析青少年口才训练在个人发展中的重要性与影响
论文题目:探析青少年口才训练在个人发展中的重要性与影响 摘要: 本论文旨在探讨青少年口才训练对个人发展的重要性和影响。通过对相关文献的综述和实证研究的分析,论文将阐述口才训练对青少年自信心、表达能力和思维能力的提升,以…...
HTML 元素的 class 和 id 属性有何区别?
聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ 唯一性⭐ 选择器权重⭐ JS操作⭐ CSS和JavaScript引用⭐ 写在最后 ⭐ 专栏简介 前端入门之旅:探索Web开发的奇妙世界 记得点击上方或者右侧链接订阅本专栏哦 几何带你启航前端之旅 欢迎来到前端入门之旅!这个专栏…...
关于GKPhoto点击放大没有图片只有缺省图
GKPhoto,点进去看看,人家可传递的不止有url,还有UiImage NSString *photo self.detailModel.teacherModel.teacher_picture; NSString *placeHoldStr "ing_morentouxiang"; NSMutableArray *photos [NSMutableArray new]; GKPhoto *phot…...
建议收藏!总结了 42 种前端常用布局方案
对 CSS 布局掌握程度决定你在Web开发中的开发页面速度。随着Web技术的不断革新,实现各种布局的方式已经多得数不胜数了。 本篇文章总结了四十二种CSS的常见布局,这四十二种布局可以细分为如下几类: 水平居中垂直居中水平垂直居中两列布局三…...
spring AOP两种动态代理
本文开始 1.什么是动态代理? 动态代理:本来是通过直接访问目标对象的,但是找个代理对象替你进行访问目标对象,这就是动态代理过程; 例如:买饭作为目标对象,自己不想亲自跑腿,就点个…...
英语——副词
副词是指在句子中表示行为或状态特征的词,常用来修饰动词、形容词、其他副词或者句子等,表示时间、地点、方式和程度等,在句子中作状语。 第一节 副词的基本形式 一、副词的构成 1.许多副词都是由形容词变化而来。 (1)大部分副词由相应形容词直接加-ly构成。quick→q…...
Vue 本地应用 记事本 v-on v-model v-for使用
新增功能 vue当中如何生成列表结构?使用的指令是v-for,同时要有一个可以生成列表的数据,常用的是数组。记事本里面的内容并不复杂,所以这里使用字符串数组就行了。 获取用户输入的内容使用绑定v-model,双向数据绑定&a…...
智能质检技术的核心环节:语音识别和自然语言处理
随着呼叫中心行业的快速发展和客户服务需求的不断提高,越来越多的企业开始采用智能质检技术,以提高呼叫中心的质量和效率。而在智能质检技术中,语音识别和自然语言处理是其核心环节,对于提高质检的准确性和效率具有重要作用。 语音…...
Python 中的值传递 和 引用传递
在 Python 当中的函数调用当中, numpy 和 torch.tensor 都 是按照 引用传递 传到函数里面的,也就是说 修改 传入函数的 形参,也会导致 未传入之前的形参 发生 变化。 position 是一个 tensor; 下面这段代码第一行,如果在函数里面…...
【雕爷学编程】Arduino动手做(200)---WS2812B幻彩LED灯带6
37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的&#x…...
ChatGPT在工作中的七种用途
1. 用 ChatGPT 替代谷歌搜索引擎 工作时,你一天会访问几次搜索引擎?有了 ChatGPT,使用搜索引擎的频率可能大大下降。 据报道,谷歌这样的搜索引擎巨头,实际上很担心用户最终会把自己的搜索工具换成 ChatGPT。该公司针对…...
Golutra:超越 IDE , 一个人,一个 AI 军团!使用赛博监工系统,指挥你的 AI 牛马
⚡ 你有没有想过,如何能像管理微信群一样管理你的 AI 团队,让多 Agent 协同工作不再是幻想! | 以下观点都是个人使用,以及测评观点。 AI 工具革命的下一个阶段 如何能通过多路协同的方式调用不同的 AI 工具,然后又让…...
Python+AI:自动分析财报数据的5个实战技巧
总共28小时,整整3天半! 而且这还只是季报,如果是年报更厚。更崩溃的是,有些公司财报格式不统一,找数据像大海捞针。 我当时的想法是:这活儿能不能自动化? 一、解决方案:PythonAI自动…...
Linux-特殊权限SUID,SGID,SBIT
SUIDSet UID:当字母s出现在文件拥有这的x权限位上的时候,例如/usr/bin/passwd这个文件的权限是[-rwsr-xr-x],此时就被称为Set UID,简称为SUID的特殊权限。SUID的权限有以下这样的功能和限制。SUID权限仅对二进制程序(binary progr…...
19 多语言切换实操:一个指令,让AI适配任意编程语言
多语言切换实操:一个指令,让AI适配任意编程语言 摘要 本文为《30天掌控AI编程:从指令到落地,手把手教你指挥AI写代码》系列第十九篇,属于第三阶段多语言实战核心内容。本篇专注AI代码跨语言无缝切换这一高频痛点,针对零基础开发者、多技术栈项目人员,拆解如何通过结构…...
D模型生成:从二维图像重建三维结构
从二维图像重建三维结构:D模型的革命性突破 在计算机视觉和人工智能领域,从二维图像重建三维结构一直是一项极具挑战性的任务。传统的三维建模方法依赖多视角图像或深度传感器,而近年来,基于深度学习的D模型(如Diffus…...
Shell程序
Shell脚本定义:以.sh结尾的文件,用于执行特定任务脚本参数传递:执行脚本时可在命令后添加参数(如start/stop)Hadoop脚本示例:sbin/hadoop-daemon.sh start namenodeShell编程特点:简单易用,适合自动化常见操作脚本执行方式:直接运行.sh文件即可执行其中命…...
2026年远程真机测试平台选型对比与体验解析
手机远控多平台操作对比:轻量操控更省心 日常做移动端真机测试时,常遇到手边没带设备、出差在外却要紧急复现兼容性或性能问题的尴尬。一次偶然机会接触到优测云真机,发现它把手机控制电脑、远程调用真机的体验做到了贴近现场操作的顺畅度。无…...
EcomGPT-中英文-7B电商模型在Vue.js前端项目中的集成:打造实时智能客服聊天组件
EcomGPT-中英文-7B电商模型在Vue.js前端项目中的集成:打造实时智能客服聊天组件 最近在做一个电商后台的升级项目,客户提了个需求,希望能在用户端和管理后台都加上一个智能客服,能实时回答商品咨询、订单状态这些常见问题。一开始…...
notepad--性能优化完全指南:从基础调优到源码级优化
notepad--性能优化完全指南:从基础调优到源码级优化 【免费下载链接】notepad-- 一个支持windows/linux/mac的文本编辑器,目标是做中国人自己的编辑器,来自中国。 项目地址: https://gitcode.com/GitHub_Trending/no/notepad-- notepa…...
Python实战:基于余弦相似度的中文短文本相似性计算
1. 为什么需要中文短文本相似性计算? 在日常工作和生活中,我们经常会遇到需要比较两段中文文本相似度的场景。比如在客服系统中自动匹配相似问题,在内容平台上检测重复文章,或者在搜索引擎中推荐相关文档。这些场景都离不开文本相…...
