news 2026/6/10 20:20:58

26-WASM介绍

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
26-WASM介绍

WASM是一种低级的编程语言,旨在提高网页运行效率,现在作为反爬手段,它的代码偏底层,我们不学代码的语法,只用学怎么补这种代码即可

网页加载过程

1.创建Wasm模块

  • 用C/C++、Rust等语言编写代码,并编译成Wasm文件

2.加载Wasm模块

  • 使用JavaScript的fetchAPI获取WASM文件,并用WebAssembly.instantiate或WebAssebly.instantiateStreaming进行加载

3.调用WASM导出函数

  • 通过实例化WASM模块,可调用导出的函数并于JavaScript进行交互

Fetch模块

简洁版ajax,代码如下:

fetch('https://...').then(response=>response.json()).then(data=>console,log(data)).catch(error=>console.error('Error:',error));

默认不带cookie,需要手动配置

WebAssebly模块

webassebly.instantiate使用:

WebAssebly.instantiate(bytes,importObject)

代码运行后返回的是一个异步,然后通过instance.exports获取模块,根据加密逻辑再调用模块即可,代码如下:

WebAessbly.instantiate(读取的WASM文件内容,{WASM文件运行所需的参数}).then(res=>{console.log(res.instance.exports.加密逻辑所需函数(需要加密的参数);})

读取WASM所需的模块

fs模块可以读取WASM文件,代码如下:

varfs=require('fs')varwasm_code=fs.readFileSync('文件地址')// 调用wasm中的函数进行加密WebAessbly.instantiate(wasm_code,{...}

小结

本文看完可能会有些蒙,下一文进行实操,你会发现代码就这么简单,本文如有什么问题发出来交流讨论,加油加油

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/10 15:36:39

三菱FX系列FX2N - 4AD - PT模拟量控制程序解析

三菱FX系列FX2N-4AD-PT模拟量控制程序 三菱FX系列FX2N-4AD-PT模拟量控制程序 三菱温度模块,采用FX2N-4AD-PT模拟量模块,由TO/ FROM应用指令来完成。 FX2N-4AD-PT模块占用特殊模块0的位置,平均数量是4,输入通道CH1到CH4表示的平均…

作者头像 李华
网站建设 2026/6/10 13:54:33

彻底爆了,一文了解LLM应用架构:从Prompt到Multi-Agent!

自 ChatGPT 问世以来,业内对于如何将LLM落地应用进行了各种探索。本文主要总结了LLM在应用落地中的探索演进流程。通过本文,你可以了解到LLM是如何从提示词阶段,演进到chain编排阶段,再演进到最新的Multi-Agent阶段的。还可以了解…

作者头像 李华
网站建设 2026/6/10 19:31:25

前端开发学习路线规划,零基础入门到精通,收藏这篇就够了

第一阶段: 1.1HTMLCSS(HTML进阶、css进阶、divcss布局、htmlcss整站开发) 1.2、javascript基础(js基础教程、js内置对象常用方法、常见的dom树操作大全、ECMAscript、DOM、BOM、定时器和焦点图) 1.3、js基本特效&#…

作者头像 李华
网站建设 2026/6/10 9:28:36

VR之问题合集

重装TMP组件安装xrhand组件

作者头像 李华
网站建设 2026/6/10 8:49:30

计算机毕设开题报告/基于springboot同学录管理系统的设计与实现

姓名xxx学号xxx专业电子商务班级电商xxx班指导教师xxx职称xxx毕业论文(设计)题目基于springboot同学录管理系统的设计与实现本选题的意义及国内外研究现状(可加附页)选题意义本选题基于Spring Boot技术设计与实现同学录管理系统&a…

作者头像 李华