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

rikka.top wordpress河北百度seo点击软件

rikka.top wordpress,河北百度seo点击软件,wordpress smart ads,辽源做网站的公司WEB后端向浏览器前端提供服务是最常见的场景,前端向后端的接口发起GET或者POST请求,后端收到请求后执行服务器端任务进行处理,完成后向前端发送响应。 那浏览器前端向后端提供服务是什么鬼? 说来话长,长话短说。我在人…

WEB后端向浏览器前端提供服务是最常见的场景,前端向后端的接口发起GET或者POST请求,后端收到请求后执行服务器端任务进行处理,完成后向前端发送响应。
那浏览器前端向后端提供服务是什么鬼?
说来话长,长话短说。我在人脸识别场景用了开源的face-api.js。它其实有浏览器端的完整模块,但是我觉得人脸识别在实际场景中应用,全部在前端做识别不太安全,因为浏览器侧未必完全安全可控,可以考虑人脸登记注册时前端将照片和用户绑定信息发到后端,后端识别出描述信息保存,识别阶段,浏览器调用摄像头识别出人脸描述信息,发往后端,在后端进行匹配验证,这样会更安全可靠一些。但是出现了一个状况,后端依赖库中有部分依赖不翻墙是下不下来。。。于是我想了一个变通的办法,人脸匹配在一个“可信前端”上执行,后端向它传输必要数据,它执行匹配判断,然后向后端传回匹配结果。思路有了,那怎么实现呢?
解决方案就是websocket,它支持双向通信。服务器上启动websocket server后,可信客户端上浏览器访问建立websocket连接,可以通过网络访问权限和服务器对请求源IP的识别来限制仅该浏览器端可以与服务器建立websocket连接。websocket的请求响应机制跟http的请求响应机制略有不同,将用户请求的响应放在websocket的消息接收处理中了。
简单示例如下:

const express = require('express');
const app = express();
var wsServer = require('express-ws')(app)
const stringRandom = require("string-random");var ress=[];app.use('/', express.static('./'));app.ws('/ws', (ws,req)=>{console.log(req.ip);ws.send(JSON.stringify({"msg":"websocket connected!"}));ws.on('message', msg => {jmsg=JSON.parse(msg);if (jmsg.type=="answer") {let res1=ress.find(item=>(item.ref==jmsg.res))res1["res"].json(JSON.stringify({"code":200,"msg":jmsg.msg}));}else console.log(msg);})
});app.post('/inq', express.json(),(req, res) => {const question = req.body.question;let refcode=stringRandom(32, { letters: 'ABCDEF' });ress.push({"ref":refcode,"res":res});Array.from(wsServer.getWss().clients)[0].send(JSON.stringify({"type":"ask","msg":question,"res":refcode}));
});app.listen(3000, () => { console.log(`express后端查询websocket demo启动`); })

浏览器地址栏输入http://localhost:3000/trust.html

<!DOCTYPE html>
<html>
<head>
<title>websocket前端充当查询服务器</title>
<meta charset="utf-8">
<script src="jquery-3.6.1.min.js"></script>
</head>
<body>
<script>var ws = new WebSocket("http://localhost:3000/ws");ws.onmessage = event => {let jvar=JSON.parse(event.data);console.log(`收到查询: ${jvar.msg}`) if (jvar.type=="ask") {ws.send(JSON.stringify({"type":"answer","res":jvar.res,"msg":"yes"}))}
}
</script>
</body>
</html>

Postwoman里POST请求http://localhost:3000/inq
在这里插入图片描述

该例子简单,html的js里处理消息type为"ask"的段内增加些代码就可满足更复杂的计算逻辑处理了,比如上面提到的人脸匹配,消息传入里question可以是一个object,比如包含待识别的人脸描述符,和已注册的人脸描述特征等。
这种变通的前后端模式既规避了纯前端方案的安全问题,又绕开了后端依赖模块缺失的问题,虽然比较另类,但是能解决问题就好。

http://www.wangmingla.cn/news/41773.html

相关文章:

  • 网页制作与网站建设期末考试网络推广渠道都有哪些
  • 优化网站价格代引流推广公司
  • 东莞做网站优化上海做关键词推广企业
  • 什么是高清视频会议终端淘宝seo排名优化的方法
  • 电子商务网站开发公司免费的大数据分析平台
  • b2c电子商务电子网站建设太原seo网站排名
  • 设计logo网站推荐seo系统源码出售
  • 网站技术制作流程图福州seo经理招聘
  • 品牌高端网站制作机构广告最多的网站
  • 胶州网站建设 网络推广怎么投放广告是最有效的
  • 衡水做网站改版百度移动
  • 类似携程网的网站网络营销是以什么为基础
  • 网上商城网站建设方案书网站优化培训学校
  • 上海大型网站建设公司排名企业管理培训课程网课免费
  • 太原网站推广大连做优化网站哪家好
  • 建设官方网站登录b2b平台
  • 专业网站建设团队培训机构招生方案模板
  • 大学英文网站建设如何写软文
  • 上海和城乡建设委员会网站长沙seo公司排名
  • 做网站得每年续费吗开发网站的公司
  • 成都网站优化多少钱象山关键词seo排名
  • 网站建设网站推广服务公司品牌型网站制作价格
  • 公安网站备案服务类型做国外网站
  • 安徽旅游在线网站建设沧州网站建设
  • 个人网站论文结束语写软文的平台有哪些
  • 德化网站建设网站排名优化外包
  • 免费试用网站制作seo排名系统源码
  • 博兴网站建设微信营销的功能
  • 网站运营及推广公众号开发网站公司
  • 建设部网站查询注册岩土工程师18岁以上站长统计