vue.js 短连接 动态连接

有这么一种场景,我们实现了某个业务,现在需要将这个业务连接对外推广以期实现我们的运营、推广、佣金目的,那么我们如何实现呢?

比如这个页面连接为:

https://mp.domain.com/user/creation/editor?spm=1&userno=12324
&signature=aerqwerxxxx&token=xxxxxx&platform=ios&lat=xxx&longi=xxxx

1、将这个长长的连接发给别人,别人进行点击打开。遇到小白还是规矩,在页面中正常操作。遇到那些比较二的人,直接给你修改连接上的参数 ,你怎么办?

2、我们将如上的长连接转变为短连接,参数不进行暴露,反而将参数以某个固定的key保存到我们服务器,用户打开时,以此KEY去取参数再在页面中使用,便可避免原连接不安全的问题。

动动脑,是不是第一个方案存在的各种问题可想而知。URL过长,牛马蛇神全部清清楚楚的暴露了。而第二个方案如何实现呢?我们试着继续向下思考:那我将连接变为:

https://mp.domain.com/s/3xRghijm09R

 这个是不是就好太多了!可是这样的连接如何与页面路由呢?你的路由表中如何定义这个连接并成功识别呢?好了,打开你的项目配置路由的地方:

1、将path和name均配置为相同的能用匹配符表达式:'/s/:key'

2、打开我们的目标页面完善代码

 这一步的目的是取出我们动态KEY来还原原始的页面连接需要的参数。

3、生成短连接:http://localhost:8013/s/3xRghijm09R

我们再次复盘一下我们的疑惑,这个3xRghijm09R是怎么来的?是的,他肯定不是飞来的,也不是风刮来的,而你是你自己生成的!

让我们再次提出问题:怎么生成呢?

我们原始连接的参数为:

spm=1&userno=12324
&signature=aerqwerxxxx&token=xxxxxx&platform=ios&lat=xxx&longi=xxxx

那我们只需要新动态连接后的3xRghijm09Rspm=1&userno=12324
&signature=aerqwerxxxx&token=xxxxxx&platform=ios&lat=xxx&longi=xxxx
建立对应关系即可!

则在生成3xRghijm09R的时候,以3xRghijm09R为键,将spm=1&userno=12324
&signature=aerqwerxxxx&token=xxxxxx&platform=ios&lat=xxx&longi=xxxx
保存起来,在页面中捕获连接是否短连接,如果是短连接则通过3xRghijm09R取出原始值即可!不同参数值最终生成的不同的KEY,不同的KEY对应自己特定的参数表,则逻辑达成!

来看看数据库表:

keyparamsText
3xRghijm09Rspm=1&userno=12324
&signature=aerqwerxxxx&token=xxxxxx&platform=ios&lat=xxx&longi=xxxx
3434opihjklkhspm=2&userno=xxx
&signature=aerqwerxxxx&token=xxxxxx&platform=ios&lat=xxx&longi=xxxx
gr9087klhkyrtgspm=4&userno=12324
&signature=aerqwerxxxx&token=xxxxxx&platform=ios&lat=xxx&longi=xxxx
yetwpjl79087rtspm=6&userno=12324
&signature=aerqwerxxxx&token=xxxxxx&platform=ios&lat=xxx&longi=xxxx
ppopi7889knkspm=8&userno=12324
&signature=aerqwerxxxx&token=xxxxxx&platform=ios&lat=xxx&longi=xxxx

至此,你看明白了吗?

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/167123.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

如何使用 WPF 应用程序连接 FastReport报表

随着期待已久的FastReport WPF的发布,您不再需要使用 FastReport .NET 来处理基于 WPF 的项目。 不久前,在 FastReport .NET 中使用 WPF 还相当不方便。并非一切都进展顺利;连接 FastReport.dll 和许多其他问题存在问题。我们重新思考了该方…

Linux+qt:创建动态库so,以及如何使用(详细步骤)

目录 1、根据安装Qt Creator的向导进行创建 2、开发动态库注意的一些细节 3、给动态库添加一个对外开放的接口文件 4、了解下Qt的 .pri文件(非常实用) 5、如何调用动态库.so 1、根据安装Qt Creator的向导进行创建 (1)选择“…

15篇MyBatis-Plus系列集合篇「值得收藏学习」

历史文章(文章累计490) 《国内最全的Spring Boot系列之一》 《国内最全的Spring Boot系列之二》 《国内最全的Spring Boot系列之三》 《国内最全的Spring Boot系列之四》 《国内最全的Spring Boot系列之五》 《国内最全的Spring Boot系列之六》 M…

网络渗透测试(TCP/IP)理论篇

TCP/IP体系 垂直服务:底层为高层服务 TCP/IP体系结构是一个分层的协议体系,由多个层次组成,每个层次都负责不同的功能。以下是TCP/IP体系结构的主要层次: 物理层(Physical Layer):该层负责传输…

milvus采坑一:启动服务就会挂掉

原因一 硬盘满了,Eric数据文件存储在硬盘上,当硬盘不足,它就会启动后就挂掉。 此时pymilvus连接一直是timeout。 解决方法:更换存储路径。

(十二)Flask重点之session

session 自我介绍&基本使用: 在Flask中,Session是一种用于在客户端和服务器之间存储和传输数据的机制。它允许您在用户与应用程序之间保持状态,并且可以存储和检索有关特定用户的信息。 Flask使用Werkzeug库提供的SecureCookie来实现S…

【活动回顾】ABeam News | 庆祝ABeam德硕与毕博中国战略合作十周年,关系再升级

国家会展中心 Date.2023.11.6 ​China International Import Expo 上周,ABeam作为毕博中国长期的战略合作伙伴,受邀出席了毕博中国在第六届进博会展台召开的战略合作十周年庆祝仪式。 本次战略合作庆祝仪式在进博会这个充满活力、创新与友谊的舞台举…

小红书软文种草怎么做,新产品上市软文创作技巧!

很多品牌有新品上市时都会借助软文传播来打开销路。因此,软文的质量几乎决定了新产品的营销结果。今天为大家分享下小红书软文种草怎么做,新产品上市软文创作技巧! 一、新品上市软文撰写的三大重点 1、确定软文撰写角度 新品上市软文&#xf…

calibre更新 环境变量设置

我这里是从别的地方copy过来的calibre,所以不用安装。 如果需要安装请参考: Caibre2022.3_17版本安装及遇到问题 - 梅希的日志 - EETOP 创芯网论坛 (原名:电子顶级开发网) -将copy过来的calibre放在原来calibre的位置。 打开工作路径下的.b…

1688阿里巴巴官方开放平台API接口获取商品详情、商品规格信息列表、价格、宝贝详情数据调用示例说明

商品详情API接口在电商平台和购物应用中的作用非常重要。它提供了获取商品详细信息的能力,帮助用户了解和选择合适的商品,同时也支持开发者进行竞品分析、市场研究和推广营销等工作,以提高用户体验和促进销售增长。 1688.item_get-获得1688商…

单片微机原理与接口技术期末复习

第二章: STC15F2K60S2 参数含义 (1)“STC”代表的含义是不能在应用中访问程序存储器,但设置了可单独访问的数据 Flash 区域。 (2)F :工作电源为5V。 (3)2k:片…

letcode::最小栈

最小栈 设计一个支持 push ,pop ,top 操作,并能在常数时间内检索到最小元素的栈。 实现 MinStack 类: MinStack() 初始化堆栈对象。void push(int val) 将元素val推入堆栈。void pop() 删除堆栈顶部的元素。int top() 获取堆栈顶部的元素。…

Wireshark网络工具

Wireshark是网络包分析工具。网络包分析工具的主要作用是尝试捕获网络包,并尝试显示包的尽可能详细的情况。 Wireshark是一个免费开源软件,不需要付费,免费使用,可以直接登陆到Wireshark的官网下载安装。 在windows环境中&#x…

IDEA运行 支付宝案例

我 | 在这里 🕵️ 读书 | 长沙 ⭐软件工程 ⭐ 本科 🏠 工作 | 广州 ⭐ Java 全栈开发(软件工程师) 🎃 爱好 | 研究技术、旅游、阅读、运动、喜欢流行歌曲 🏷️ 标签 | 男 自律狂人 目标明确 责任心强 ✈️公…

SOLIDWORKS2024钣金及结构系统功能增强

SOLIDWORKS钣金和结构系统是大家比较熟悉的模块了,在新版本中钣金和结构系统功能也做了相应的优化。接下来让我们看看在SOLIDWORKS 2024中钣金和结构系统有哪些功能增强。 首先是钣金方面,我们先来看看新增的槽口延伸功能,在装配体零部件中创…

AIGC创作系统ChatGPT源码,支持最新GPT-4-Turbo模型,支持DALL-E3文生图

一、AI创作系统 SparkAi创作系统是基于OpenAI很火的ChatGPT进行开发的Ai智能问答系统和Midjourney绘画系统,支持OpenAI-GPT全模型国内AI全模型。本期针对源码系统整体测试下来非常完美,可以说SparkAi是目前国内一款的ChatGPT对接OpenAI软件系统。那么如…

DolphinDB 基于 Glibc 升级的性能优化实战案例

在高并发查询、查询需要涉及很多个分区的情况下,低版本的 glibc(低于2.23)会严重影响查询性能。需要升级 glibc 解决该问题优化性能。我们撰写了本文,通过 patchelf 工具修改可执行文件和动态库的 rpath,达到无需升级系…

【GEE】基于GEE进行非监督学习

1 简介与摘要 之前写了多季节叠加的监督学习,所以这次简单写一个非监督学习吧。。 这次为了简单明了,就不整那么多虚的了,在这里我不叠图层了,有需要的可以参考前一篇博客自己添加输入的图层。 2 制作输入影像 首先&#xff0c…