Javascript ';MessageChannel未定义';在使用reCaptcha v2的页面上触发

Javascript ';MessageChannel未定义';在使用reCaptcha v2的页面上触发,javascript,node.js,dom,jsdom,Javascript,Node.js,Dom,Jsdom,我目前正试图抓取一些已实现recaptcha的站点,但每当我加载页面的源代码时,就会出现以下错误: (节点:15536)未处理的PromisejectionWarning:ReferenceError:MessageChannel未定义 我尝试在这里实现修复:,但它仍然抛出错误 这是我的密码: constjsdom=require('jsdom'); const request=require('request'); const{JSDOM}=JSDOM; 常量url=https://www.g

我目前正试图抓取一些已实现recaptcha的站点,但每当我加载页面的源代码时,就会出现以下错误:
(节点:15536)未处理的PromisejectionWarning:ReferenceError:MessageChannel未定义

我尝试在这里实现修复:,但它仍然抛出错误

这是我的密码:

constjsdom=require('jsdom');
const request=require('request');
const{JSDOM}=JSDOM;
常量url=https://www.google.com/recaptcha/api2/demo';
函数getPage(){
返回新承诺(功能(解决、拒绝){
get(url、函数(错误、响应、正文){
如果(错误){
拒绝(错误);
}
否则{
决议(机构);
}
}
});
}
(异步()=>{
const dom=new JSDOM(等待getPage(){
网址,
contentType:'text/html',
运行脚本:“危险的”,
资源:'可用',
假装:是的,
beforeParse(窗口){
window.MessageChannel=require('worker_threads').MessageChannel;
}
});
})();
提前感谢,


iLink

消息频道在iframe上下文中不可用


beforeParse
函数不会在帧中运行:

消息通道在iframe上下文中不可用


beforeParse
函数不会在帧中运行:

您是否正在传递
节点
标记--experimental worker标记?我已经尝试过了。即使我添加了它,它仍然会抛出错误,只是为了确保清楚:当我尝试评估“new MessageChannel()时,它工作正常)“。它只在ReCaptcha v2的上下文中给出了错误。您是否传递了
节点
--实验工作者
标志?我已经尝试过了。即使我添加了它,它仍然会抛出错误,只是为了确保清楚:当我尝试评估“new MessageChannel()”时,它工作正常。它只在ReCaptcha v2的上下文中给出了错误。”。