Skip to content

JavaScript执行上下文

执行上下文是指JavaScript代码执行的环境。 在 MakAgent 中,有两种环境可供选择:“活动标签页”和“后台”。

活动标签页

工作流会将 JavaScript 代码注入到工作流的活动标签页中。 当你想要进行 DOM 操作或想要从元素获取属性或文本时,请选择此环境。 但有些网站是不允许注入JS代码的。 这是因为他们有内容安全策略(CSP),这使得无法注入第三方代码。 要检查是否允许第三方代码,你可以按ctrl+shift+i打开 Chrome 开发工具; 在console选项卡中粘贴以下代码:

js
const script = document.createElement('script');
script.textContent = 'alert("Hello world!")';
document.body.appendChild(script);
const script = document.createElement('script');
script.textContent = 'alert("Hello world!")';
document.body.appendChild(script);

如果你见到 Refused to execute inline script because it violates the following Content Security Policy directive... 错误, 这意味着要注入第三方代码。

CSP Error

后台

该工作流程在沙箱内执行你的 JS 代码。 如果你的代码不执行任何与 DOM 相关的操作,请选择此环境作为执行上下文。 而且它不需要活动标签页即可工作。

如果你想进行调试,例如使用console.log方法。 你可以通过在 MakAgent 仪表板上打开 Chrome Devtools 来找到输出。