Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/473.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何替换网站的javascript功能?_Javascript_Google Chrome Devtools_Reverse Engineering - Fatal编程技术网

如何替换网站的javascript功能?

如何替换网站的javascript功能?,javascript,google-chrome-devtools,reverse-engineering,Javascript,Google Chrome Devtools,Reverse Engineering,我正在尝试修改一个网站javascript函数: function example(pExample) { ... } 致: 我已经尝试过在Chrome开发者工具源标签中修改这个函数,但是看起来没有效果。我已经考虑过使用某种扩展将脚本的源代码替换为我自己的脚本,但是脚本在每次重新加载页面时都会更改其名称,所以我认为这是不可能的。有什么想法吗?您可以在调用函数之前设置一个中断点,然后从控制台覆盖函数 示例是否是全局的?或者,它叫什么名字?一个带有函数的站点(或完整的HTML/JS)的特定示例

我正在尝试修改一个网站javascript函数:

function example(pExample) {
  ...
}
致:


我已经尝试过在Chrome开发者工具源标签中修改这个函数,但是看起来没有效果。我已经考虑过使用某种扩展将脚本的源代码替换为我自己的脚本,但是脚本在每次重新加载页面时都会更改其名称,所以我认为这是不可能的。有什么想法吗?

您可以在调用函数之前设置一个中断点,然后从控制台覆盖函数


示例
是否是全局的?或者,它叫什么名字?一个带有函数的站点(或完整的HTML/JS)的特定示例会有很大帮助。有一些技巧,但这取决于具体情况。我不是很确定,请看一看,所说的函数是_SocketSend(),它被一些奇怪的webAssembly函数调用。25000行不完全是a,但函数的作用域不限于窗口,所以会更难。在脚本的这部分运行之前,可能会使用您自己的不可分配对象覆盖
UnityLoader[“c587df8d22291646f86723dddaa0eb1c”
。我非常抱歉。但是,当脚本加载后立即运行时,如何在它运行之前覆盖它呢?可能是使用MutationObserver,但如果不看到HTMLEven,很难说代码到底是什么。当我在函数本身设置断点时,它不会中断。看起来脚本是以某种方式加载到内存中的,这可能是因为我不能只修改文件。我认为,一旦加载到内存中,您就不能直接从devTools修改文件,您只能通过添加断点中断其加载到内存中,并在执行函数之前覆盖这些函数(添加断点后重新加载)问题是,每次重新加载时,文件名都会更改,因此断点会丢失。在这种情况下,您无法阻止函数使用原始代码运行,您可以覆盖它(如果它是全局函数)并使用新代码再次运行,但不会阻止首次执行。
function example(pExample) {
  ...
  console.log(pExample);
}