如何通过postMessage或任何类似的函数传递File对象

时间:2016-03-30 20:59:03

标签: javascript google-chrome google-chrome-extension

有没有办法通过File或任何类似的功能传递postMessage个对象?

我需要在页面相关的JS代码和内容脚本之间进行通信,如documentation中所述。

如果我尝试直接传递它,它会给我以下错误:

  

未捕获DataCloneError:无法在'Window'上执行'postMessage':   无法克隆对象

1 个答案:

答案 0 :(得分:1)

当postMessage将未导出的对象作为参数发送时,会出现Uncaught DataCloneError: Failed to execute 'postMessage' on 'Window': An object could not be cloned错误消息。

请查看此page,了解如何播放频道消息。

基于此SO question,替代方法是使用您希望传递的任何类型数组的后备ArrayBuffer实例的数组。