找回密码
 立即注册

QQ登录

只需一步,快速开始

luolanqiang 活字格认证

高级会员

136

主题

456

帖子

1398

积分

高级会员

积分
1398

微信认证勋章活字格认证

luolanqiang 活字格认证
高级会员   /  发表于:2020-9-2 23:08  /   查看:11549  /  回复:27
本帖最后由 luolanqiang 于 2020-9-4 10:25 编辑

有这么一个场景:用二维码张贴设备标签,用手机扫码读取设备信息,听起来似乎很简单,但一做就杯具了~~
1、必须支持匿名访问;
2、不限客户端访问,例如微信、QQ、百度客户端......凡是你能想到的(其实大多数人习惯用微信扫一扫)
那么问题就来了:
光识别一个死的信息很多时候没有价值,而且不美观,我们要做的是获取设备的动态信息,这些信息当然是在数据库中提取,甚至在页面上用超链接去查询更多的相关信息,那么首先要连接到我们设计好的设备信息页面,然后用设备ID去查询相关信息。那么二维码肯定是一个URL地址,指向设备信息页面,但是设备ID如何传入就成了问题,这时候有两个方案:
1、通过手机扫码进入页面,然后手工输入设备ID查询;
2、通过手机扫码进入页面,然后从页面再次调用手机扫码扫入设备ID查询(相当于是两个二维码),这个方式本身就比较繁琐,而且,调用手机扫码,目前论坛提供的方法有企业微信调用、微信公众号调用、钉钉调用、活字格APP调用,可问题是,我们没有办法限制别人使用什么客户端,蛋大了吧?我们的应用场景是生产出的产品张贴二维码,领导检查的时候,可以扫描获取这个产品的相关信息(比如桥梁上的预制梁),那最好是不管用什么客户端,能扫的都行。
以上两个方法都不是最佳的,折腾了半天,解决了这个问题,只需要扫一次。

1、使用“#”拼接URL和设备ID,例如HTTP//XXXX.COM#123456,生成二维码(XXXX.COM代表设备信息查询页面地址,123456为设备ID);“#”之后的内容对URL没有影响,它是多余的,实际上浏览器的请求还是XXXX.COM,还是跳转到查询页面;
2、在页面上利用JS代码获取当前URL(包含有设备ID),赋值给一个单元格,假定这个单元格命名为"abc",页面加载命令加载如下代码:
var test = window.location.href
Forguncy.Page.getCell('abc').setValue(test)
3、这时候名称为abc的单元格将得到这个拼接的URL,利用一个函数去获取这个ID,假设这个ID是固定位数的那么直接用RIGHT函数好了,如果不是的话,先find("#",abc)可以得到#所在的位置,然后len(ABC)得到整个URL的长度,RIGHT(abc,len(ABC)-find("#",abc))即可得到设备ID。
4、加载设备列表到页面,查询条件为上边得到的这个ID。
解决问题,一扫终决。

评分

参与人数 3金币 +666 满意度 +10 收起 理由
王鸿辉 + 5 很给力!
Simon.hu + 666 赞一个!
白菜贝贝 + 5

查看全部评分

27 个回复

正序浏览
BrianKai
葡萄城公司职员   /  发表于:2022-5-11 18:01:01
28#
做的不错,最近个人开发者上架应用/插件到葡萄城市场可以拿金币啦!
您可以关注下
https://gcdn.grapecity.com.cn/fo ... &extra=page%3D1
回复 使用道具 举报
Tom猫
中级会员   /  发表于:2022-5-6 19:43:51
27#
黑色幽默 发表于 2022-5-6 16:39
怎么收藏帖子我咋没找到,感觉以后会用到,怕找不到了

帖子下面有个‘收藏’按钮,点一下即可
回复 使用道具 举报
黑色幽默悬赏达人认证 活字格认证
高级会员   /  发表于:2022-5-6 16:39:24
26#

怎么收藏帖子我咋没找到,感觉以后会用到,怕找不到了
回复 使用道具 举报
Tom猫
中级会员   /  发表于:2022-4-9 14:27:42
25#
果断收藏
回复 使用道具 举报
luolanqiang活字格认证
高级会员   /  发表于:2022-3-31 15:14:06
24#
洗尿布的 发表于 2022-3-3 18:53
大佬可以加个微信好友吗?

可以,13885555354
回复 使用道具 举报
洗尿布的活字格认证
中级会员   /  发表于:2022-3-3 18:53:06
23#
大佬可以加个微信好友吗?
回复 使用道具 举报
洗尿布的活字格认证
中级会员   /  发表于:2022-3-2 18:53:41
22#
老铁牛逼
回复 使用道具 举报
glacier_
中级会员   /  发表于:2022-3-2 16:18:40
21#
感谢大佬,牛逼
回复 使用道具 举报
2516639666
中级会员   /  发表于:2021-11-21 15:36:19
20#
2516639666 发表于 2021-11-21 13:28
为什么阿里云服务器里面 按照一样的办法。实现不了

万份感谢。已解决问题~~~好办法!
回复 使用道具 举报
123下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部