在OpaLang从服务器到客户端的异步调用

时间:2015-04-27 21:42:48

标签: opa

非阻止客户端到服务器调用的方案是:

@async exposed function do_something_on_server() {
  protected_server_job();
}
client function onclick(_) {
  do_something_on_server();
}
<a onclick={onclick}>do it!</a>

此调用使用单个HTTP请求:

https://wkaliszu.pl/_internal_/7821004025888768/rpc_call_async/__do_something_on_server_package.name

我可以调用客户端代码来异步进行DOM更新吗?添加@async似乎没有任何区别,我仍然得到类似于以下内容的额外HTTP请求:

https://wkaliszu.pl/_internal_/7821004025888768/rpc_return/Cl

包含void值(空JSON对象{})。

如果客户端调用返回void,我不需要该值,并使其异步将节省一个HTTP请求。

1 个答案:

答案 0 :(得分:0)

@async注释仅表示调用是异步执行的,这意味着调用者(客户端)不会阻塞并等待同步调用的结果。异步注释只能应用于返回void的函数,但仍需要从客户端到服务器的初始请求。只是,你不关心结果。据我所知,无法删除回复请求,因为这是Opa实现。