原地址:https://www.cnblogs.com/taltao/p/10082084.html

众所周知,微信小程序的代码安全性很弱,很容易被别人反编译获取源码。我自己的小程序也被别人反编译拿到源码还上线了,非常无语。

既然客户端不好防范,服务端还是可以做点手脚的。

小程序的Referer是不可以更改的,从手机上发出的请求的Referer一般是这样

https://servicewechat.com/wx05ac2038cb1a1286/1000/page-frame.html

结构很清晰,可以分为四部分:

https://servicewechat.com是小程序的域名,wx05ac2038cb1a1286是小程序的APPID,1000这个数字是什么不清楚,不过看这个数字有很多,大概率是通过小程序不同页面发起的请求对应的数字不同,page-frame.html这个不用管,每个请求最后都一样。

如果你想过滤掉所以来自微信小程序的请求,只需要在加一个Referer检测的中间件,所有Referer里包含“https://servicewechat.com”的请求全部返回500就可以了。

别人拿到你的代码,肯定要在开发者工具里运行的,小程序通过开发者工具发出的请求的Referer和通过手机发出的是不同的

https://servicewechat.com/wx05ac2038cb1a1286/devtools/page-frame.html

可以看出,通过开发者工具发出的请求Referer里和普通手机发出的请求的唯一区别就是原本的数字变成了devtools,所以可以加个中间件拦截所有Referer里包含devtools的请求,当然也可以拦截到请求以后直接将请求的IP地址拉黑,一劳永逸,这样即便是用手机也无法访问你的小程序了。

当然这样也有个问题,就是你自己在开发者工具调试的时候也没办法访问服务器,可以给自己的IP地址开个白名单什么的。

vue代码可以反编译吗_避免小程序被反编译获取源码(转载)相关推荐

  1. vue代码可以反编译吗_微信小程序源码提取反编译

    一.前言 微信小程序源码提取反编译,听起来很屌,其实还是简单的,基本是傻瓜式操作.要想拿到微信小程序源码,找到源文件在手机存放的位置就行,源文件拿到,用反编译脚本跑一下,微信小程序代码包里的所有文件. ...

  2. 基于SpringBoot+Vue在线考试系统【web端+小程序端】【附带源码】

    最近和不少大佬聊天,有的技术很牛,有的赚很多,有的已经是高管,有的有自己的公司. 通过聊天,我发现成功人的优点基本相同: 能吃苦,执行力强,自律性强. 喝了不少酒后,酒后吐真言,成功的人都不容易,说这 ...

  3. 基于SpringBoot + Vue的小程序商城项目(附源码),支持分销、团购、秒杀、优惠券。。。...

    前些时候一直有粉丝让我分享带分销的商城项目,网上收集了一波,希望能帮到大家. 面向对象 该程序是企业在创立初期很好的技术基础框架,加快公司项目开发进度,当然也可以对现有的系统进行升级: 个人开发者也可 ...

  4. PHP小程序多商户商城系统源码下载(免费全开源)_三勾商城开源版

    三勾商城是开发友好的微信小程序商城,框架支持SAAS,支持发布 iOS + Android + 公众号 + H5 + 各种小程序(微信/支付宝/百度/头条/QQ/钉钉/淘宝)等多个平台,不可多得的二开 ...

  5. 10行代码实现微信小程序支付功能,使用小程序云开发实现小程序支付功能(含源码

    前面给大家讲过一个借助小程序云开发实现微信支付的,但是那个操作稍微有点繁琐,并且还会经常出现问题,今天就给大家讲一个简单的,并且借助官方支付api实现小程序支付功能. 传送门 借助小程序云开发实现小程 ...

  6. vue用公共组件页面传值_微信小程序页面传值、组件间通信总结

    小程序是一种新的开放能力,开发者可以快速地开发一个小程序.小程序可以在微信内被便 捷地获取和传播,同时具有出色的使用体验.对于微信小程序,前端开发应该不陌生,目前也 是非常火,很多公司都会进行开发.对 ...

  7. 好玩的表情包机器人小程序源码_支持直接搜索仿聊天界面获取源码

    简介: 界面就相当于是聊天界面,然后是你和AI的界面: 打开小程序后会自动全网推送几个表情包给你,然后你可以点击下方的说你还要然后又会随机发给你. 当然你也可以输入关键词然后会自动发送与你关键词有关的 ...

  8. 基于SpringBoot vue的小程序商城项目(附源码),支持分销、团购

    来源:微同科技 前些时候一直有粉丝让我分享带分销的商城项目,网上收集了一波,希望能帮到大家. # 面向对象 该程序是企业在创立初期很好的技术基础框架,加快公司项目开发进度,当然也可以对现有的系统进行升 ...

  9. 微信小程序怎么把获取的值传到引用组件内_微信小程序如何将接口获取的数据传递给自定义组件...

    2019-07-11 回答 不知道你是什么意思.帮你改了下 class program { static int n = 4; int i, m; dsd[] a = new dsd[n]; publ ...

最新文章

  1. html设置列表菜单,css 列表菜单的设计
  2. 第二阶段scrum-3
  3. java-HashMap源码学习
  4. EF Core使用Simple Logging输出日志
  5. 最新系统之家系统win11 32位官方版v2021.07
  6. pytorch实战案例-手写数字分类-卷积模型——深度AI科普团队
  7. (42)根据时钟关系分类时钟
  8. ❤️Spring的声明式事务
  9. 【MFC开发(8)】下拉框控件Combo Box
  10. 10. InnoDB表空间加密
  11. 关于Snoop的用法
  12. 特征点匹配——SIFT算法详解
  13. mat1 and mat2 shapes cannot be multiplied ( )的解决
  14. 【电路理论】2-6 线性电阻电路解答的存在性与惟一性定理
  15. 教务系统爬虫收集学生成绩信息
  16. anchor free和anchor based的区别
  17. 德州CC2640R2f蓝牙芯片学习笔记(二)代码框架
  18. cisco 华三 对接_h3c与cisco对接注意
  19. Windows 11 Server 2022 HLK kit WHQL认证注意事项
  20. PLSQL登陆时一直处于logging on

热门文章

  1. 如何将PDF文件转换为Excel表格?这两个方法方便实用!
  2. codeforces 841B Godsend
  3. 计算机天梯赛pat练习集L1-(31~88题)
  4. 深度学习实战:tensorflow训练循环神经网络让AI创作出模仿莎士比亚风格的作品
  5. CCS使用代码补全功能
  6. 安徽vfp计算机二级知识,安徽省计算机二级VFP考试理论模拟试题2(附答案)
  7. python图像计数_计算机视觉:利用OpenCV和Python进行车辆计数详细步骤
  8. php听牌算法,打麻将要学会的听牌算法
  9. 一篇文带你从入门到发布了解 uni-app
  10. html怎么判断字段,javascript中怎么判断字符串相等?