首页 > 解决方案 > 如果重写,如何访问本机 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 格式的数据?恐怕我不能只写很多引号,这会使我的代码很难被混淆。

标签: javascriptgoogle-chrome-extension

解决方案


推荐阅读