网页实现串口TCP数据通讯的两种方案
概述
串口和TCP数据通讯客户端的形式比较多,但是网页中用的比较少。
其实最大的是网页无法访问本地资源造成的,可能是出于安全方面考虑吧。
解决方案也不是没有,这里介绍几种供大家参考。
方案一:专用工具
先说重要的
这种方案必须使用专用的浏览器工具,你可以使用网页技术来开发软件,但必须在本工具内使用。
详细的可以参考这个文章HTML实现发送接收串口和TCP数据
工具下载地址:
链接:https://pan.baidu.com/s/1e-nLn1sd1wYSWMkrHFFTRw
提取码:53ch
方案二:兼容所有浏览器
还是先说重点
这种方案可以使用其他浏览器,比如chrome,火狐等等,但是客户端仍然需要安装一个软件。
原理就是客户端的软件与串口通讯,然后网页与本地客户端通讯,这样客户想使用什么浏览器就使用什么浏览器。
你仍然可以使用HTML开发语言来开发软件。
这种方案显示比上一种要好一些。
TCP通讯示例
http://ly.hnsrnd.com/test2.html

网页demo:客户端下载地址:
链接:https://pan.baidu.com/s/1t1e-8aG7arMOXABIdgc3GA
提取码:1luj
总结
目前市场的基本上都是上面两种方案,我知道你想要的那种方案,目前还没有,以后可能会有吧。但这需要WWW行业标准来推动,上面我也说了,出于安全方面考虑,这是把双刃剑,最后的落地时间不确定。还是自己先想办法解决吧。工
网页实现串口TCP数据通讯的两种方案的更多相关文章
- kettle 多表全删全插同步数据 两种方案
背景: 接到上级指示,要从外网某库把数据全部导入到内网,数据每天更新一次即可,大约几百万条数据,两个库结构一样,mysql的,两台数据库所在服务器都是windows server的,写个java接口实 ...
- 获取网页URL地址及参数等的两种方法(js和C#)
转:获取网页URL地址及参数等的两种方法(js和C#) 一 js 先看一个示例 用javascript获取url网址信息 <script type="text/javascript&q ...
- Struts2中validate数据校验的两种常用方法
本文主要介绍Struts2中validate数据校验的两种方法及Struts2常用校验器. 1.Action中的validate()方法 Struts2提供了一个Validateable接口,这个接 ...
- oracle rename数据文件的两种方法
oracle rename数据文件的两种方法 2012-12-11 20:44 10925人阅读 评论(0) 收藏 举报 分类: oracle(98) 版权声明:本文为博主原创文章,未经博主允许不 ...
- 数据存储的两种方式:Cookie 和Web Storage
数据存储的两种方式:Cookie 和Web Storage 1.Cookie Cookie的作用就像你去超市购物时,第一次给你办张购物卡,这个购物卡里存放了一些你的个人信息,下次你再来这个连锁超市时, ...
- 数据存储的两种方式:Cookie 和Web Storage(转)
数据存储的两种方式:Cookie 和Web Storage 数据存储的两种方式:Cookie 和Web Storage 1.Cookie Cookie的作用就像你去超市购物时,第一次给你办张购物卡 ...
- [转载]Java操作Excel文件的两种方案
微软在桌面系统上的成功,令我们不得不大量使用它的办公产品,如:Word,Excel.时至今日,它的源代码仍然不公开已封锁了我们的进一步应用和开发.在我们实际开发企业办公系统的过程中,常常有客户这样子要 ...
- 详解Grunt插件之LiveReload实现页面自动刷新(两种方案)
http://www.jb51.net/article/70415.htm 含Grunt系列教程 这篇文章主要通过两种方案详解Grunt插件之LiveReload实现页面自动刷新,需要的朋友可以 ...
- 用Redis实现延迟队列,我研究了两种方案,发现并不简单
大家好,我是三友~~ 背景 前段时间有个小项目需要使用延迟任务,谈到延迟任务,我脑子第一时间一闪而过的就是使用消息队列来做,比如RabbitMQ的死信队列又或者RocketMQ的延迟队列,但是奈何这是 ...
- Linux下实现秒级定时任务的两种方案
Linux下实现秒级定时任务的两种方案(Crontab 每秒运行): 第一种方案,当然是写一个后台运行的脚本一直循环,然后每次循环sleep一段时间. while true ;do command s ...
随机推荐
- win32-EnumChildWindows的使用
#include <Windows.h> #include <iostream> #include <string> static BOOL CALLBACK en ...
- 【Android 抓包对抗】客户端证书和域名校验绕过
1. 按照之前的方式(https://www.cnblogs.com/gradyblog/p/17197707.html)进行抓包发现证书校验失败 SSL handshake with client ...
- Docker进阶之01-Docker Compose编排工具
Docker Compose是什么 https://github.com/docker/compose 可以按项目为单位管理多个Docker容器,Python语言开发,底层调用Docker的API接口 ...
- python装饰器保留原有函数名称和属性functools.wraps()
# python装饰器在实现的时候,被装饰后的函数其实已经是另外一个函数了(函数名等函数属性会发生改变),为了不影响,python的functools包中提供了一个叫wraps的decorator来消 ...
- django时区相关说明
# naive time 从字面意思上理解,这是个"幼稚的时间",所以可以理解为它是个本地时间,不带时区信息,不能直接用于存储,如下 import datetime datetim ...
- Lua 中如何实现继承
本文主要参考了菜鸟教程中的 Lua 面向对象,再加上自己学习过程的中思考,特此记录,如果文中有不对的地方,请不吝赐教. 这里就不在介绍面向对象的基本思想了,主要讲一讲 Lua 中如何实现继承,包括单继 ...
- 第136篇:动画API:setInterval 与 requestAnimationFrame的区别
好家伙,书接上文 function animate() { //请求-动画-框架 requestAnimationFrame( animate ); //改变正方体在场景中的位置,让正方体动起来 ...
- 主流开源分布式图计算框架 Benchmark
本文由美团 NLP 团队高辰.赵登昌撰写,首发于 Nebula Graph Community 公众号 前言 随着近年来数据的爆炸式增长,如何高效地分析处理数据,在业界一直备受关注.现实世界中的数据往 ...
- Java 类方法的声明和使用
1 /** 2 * 3 * @Description 4 * @author Bytezero·zhenglei! Email:420498246@qq.com 5 * @version 6 * @d ...
- python爬虫中文转成一个字符串类型的unicode字符串(%u)的问题
本文主要介绍某些爬虫在遇到%u627E%u4E0A%u95E8这种类似unicode编码的str类型数据时,无法直接使用decode('unicode-escape')方法来转成中文时的一个转码的解决 ...