javascript - 如果重写,如何访问本机 Javascript 函数?
问题描述
所以最近我在开发一个CRX扩展,需要将一些JSON格式的数据从页面传输到content-script,但是我遇到的问题是原生的JSON.stringify函数被页面中的一些JS重写了,所以以下JS不起作用。
var dataBridge = document.createElement('script'); dataBridge.type = 'text/javascript'; document.body.setAttribute('dataBridge',JSON.stringify(PageData)); document.head.appendChild(dataBridge); document.head.removeChild(dataBridge); PageData = document.body.getAttribute('dataBridge'); PageData = JSON.parse(PageData);
那么,如果它被“劫持”,我是否可以访问本机函数?如果没有,我是否可以通过其他方法传输这些 JSON 格式的数据?恐怕我不能只写很多引号,这会使我的代码很难被混淆。
解决方案
推荐阅读
- excel - 在 Excel 中的 Sheet1 中显示从 Sheet2 到 Sheetn 的最新条目
- image - 响应式图像底部的图标(始终位于引导列的底部)
- vba - ComboBox(number)_Change 从 VB 中生成的 ComboBoxes
- javafx-8 - JavaFX 绑定 PathTransition 的元素坐标
- cmake - CMake 生成器表达式依赖于源属性
- node.js - 使用适用于 nodejs 的 Neo4j-Driver 通过 id 和参数获取节点
- java - java 8 lambda Optional.ofNullable
- javascript - rxjs6 管道两个可观察对象给订阅不是一个功能
- ruby - ruby gem 包含仍然需要在 Gemfile 中显式依赖
- c# - 在 Autofac 中多次注册具有不同实例范围的服务