大厂前端大神教你如何规避小程序的各种奇葩坑
发表时间:2023-12-09 17:53:33
文章来源:炫佑科技
浏览次数:139
菏泽炫佑科技 菏泽炫佑小程序开发 菏泽炫佑app制作 炫佑科技
大厂前端大神教你如何规避小程序的各种奇葩坑
看到别人网上小程序的效果,我纯粹是靠猜测。 有些效果绞尽脑汁也能大致实现,但有些细节却费尽全力也达不到。 想看一下源代码吗? 走着瞧吧? 来看看大厂的前端高手是如何避免小程序中各种奇奇怪怪的陷阱的? 那么现在就来尝试一下吧。
反编译其实很简单。 如果你想获取微信小程序的源代码,只需找到源文件在手机上的存放位置即可。 获取源文件并使用反编译脚本运行它。 微信小程序代码包中的所有文件和所有文件都会被找到。 资源出来了(除了..json小程序配置文件)。 拿到源码后可以运行,但是登录、授权等appid相关的功能无法使用,因为反编译后的小程序的服务端appid和你本地添加的不一样。 这就是它被拉下来的原因。 源码中之所以没有..json文件,是因为项目中的appid是配置在这个文件中的,一定程度上保护了原来的小程序。
2. 所需工具
1、运行环境
这是反编译脚本所需的运行环境。 下载并安装:
(1) 下载链接:或者。 安装过程中直接点击下一步即可。 安装后,它将被设置为环境变量。
(2)打开cmd,测试是否安装成功。 在命令行输入node -v,如下:D:>node -v 结果:v12.11.1
图像
2.下载反编译脚本
*新下载地址:
使用cd命令进入克隆或下载的反编译脚本的目录。 下载后,解压 .zip 文件。 这是前任大师的杰作。 我发现这个更容易使用。 也可以使用其他版本。
3.夜神模拟器
用于查找微信小程序的源文件。 当然也可以在真机上使用,但是比较麻烦,因为需要root权限,而且是越狱的。 夜神模拟器很方便。 您可以直接在设置中设置超级用户权限并获取超级权限。 你可以为所欲为,通过下面的RE文件管理器查看微信小程序源文件。
图像
4.RE文件管理器
(在模拟器中搜索安装或自动下载导入到模拟器中安装)用于查找微信小程序源文件。
3. 编译过程
1.安装RE文件管理器
在模拟器中安装RE文件管理器(可以直接在模拟器上搜索“RE文件管理器”进行安装)。
2. 获取超级用户权限
打开手机设置->找到超级用户->点击右上角三个小点,设置->点击“超级用户访问”选择“仅限应用程序”,这样就获得了超级用户权限。
或者当你打开RE文件管理器,**次进入data文件夹时,模拟器会显示超级用户请求。 选择“永久记住选择”->点击“允许”即可获得超级用户权限。
图像
3.打开需要反编译的小程序
打开微信。 如果没有,只需从应用商店下载即可。 打开需要反编译的微信小程序。 小程序打开后,可以切换到RE文件管理器查找源文件。
这里有一个机制。 当你点击某个微信小程序时,如果在本地文件夹中找到了即将运行的小程序,则会从微信服务器下载到本地,稍后再运行该小程序。 运行时,微信服务器会通知小程序是否有新版本。 如果有新版本,会在后台静默下载,小程序继续运行。 新版本直到下次运行才会启用。 这就是微信小程序的更新机制。
4.获取源文件
从根目录开始打开 RE 文件管理器。 /data/data/com..mm//...//pkg/,路径中有一段...大厂前端大神教你如何规避小程序的各种奇葩坑,表示具体是哪一个不太确定微信小程序开发哪个平台好,通常是一个很长的组成的文件数字和字母(如下图所示)
图像
不管怎样,它是这个下的文件夹之一,接下来你就会看到这个文件夹。 如果是这样,您就会找到该位置。
找到源文件后,按住左键->点击右上角的三个小点,打开菜单,选择“压缩所选文件”->完成后,点击查看->长按,或者上右下角,保存模拟设备的压缩包,可以通过多种方式发送到电脑。 下图是通过QQ发送的。
图像
图像
5.下载反编译文件
下载反编译文件后,桌面上会出现这样的文件夹结构。 在nimi-yuan文件夹下,这里是微信小程序源文件。
lib文件夹包含反编译脚本。
6.安装依赖包
在终端输入cmd进入刚刚下载的脚本目录,按顺序安装以下依赖,然后全部安装。
npm install esprima
npm install css-tree
npm install cssbeautify
npm install vm2
npm install uglify-es
npm install js-beautify
复制
安装依赖项后,*后一步是反编译 . 文件。
例如:我有一个文件需要反编译。 已经解压到D盘根目录,然后输出命令
节点 .\.js D:.
图像
7.反编译完成
用node.js执行成功后,查看反编译成功后的文件夹。 源码中除了..json配置文件外,还有其他的配置文件。 导入工程后即可看到效果。 过程中可能会出现一些问题,需要进行调试。 下图是编译成功后的截图。
图像
4。结论
至此,微信小程序的反编译过程就结束了。 仅供学习之用,不可用于其他用途。 可见微信小程序源码的安全性并不好。 估计很快就不能再这么做了,漏洞*终会被填补。