HTML 5 个具有多个参数的网络工作者

HTML 5 webworkers with multiple arguments

我刚刚进入 HTML5 网络工作者,现在我想将多个参数传递给我的工作者。

我的页面中有这个:

var username = document.getElementById("username").value;
var server_url = 'localhost';
w.postMessage(username,server_url);

我的工人中的这个:

var username = '';
var server_url = '';

onmessage = function (e,f) {
    username = e.data;
    server_url = f.data;
}
console.log(username);
console.log(server_url);

当我打开它时,在浏览器中调用工作人员的页面: Uncaught TypeError: Failed to execute 'postMessage' on 'Worker': The 2nd argument is neither an array, nor does it have indexed properties.

我只想将 usernameserver_url 传递给工作人员 我知道在示例中我硬编码了 server_url,但在真实脚本中,它是动态的。

请不要只是说:改变这个,做那个,而是向我提供代码,这样我就可以看到应该如何完成,而不是仍然必须自己弄清楚。

Post 像这样:

w.postMessage({ 
    user: username, 
    url: server_url 
})

在消息事件中执行:

onmessage = function (e) {
    username = e.data.user;
    server_url = e.data.url;
}