直接 Web 远程处理 (DWR) 如何工作?

tes*_*dtv 5 javascript java ajax dwr

Direct Web Remoting (DWR) 到底是如何做的或者到底是做什么的?虽然我已经浏览过官方网站http://directwebremoting.org/ 我想用简单的语言理解..

具体来说我有以下问题;1. 虽然 engine.js 是标准 Javascript 库,但它到底如何帮助将其包含在我们的应用程序中?2. DWR 有什么特别之处,是普通 Javascript / AJAx 组合无法完成的?

谢谢。

Dav*_*vid 5

好吧,我只是简单地了解了一下 DWR,我也想知道同样的事情。据我所知,DWR 构建并在您的页面上包含一些反映服务器端 java 的 javascript。它将生成您可以在 JavaScript 中调用的客户端代理。因此,您可以使用RemoveObj.doSomeStuff(...),而不是使用jquerys $.ajax(...) 命令并指定url、数据类型、数据等,它会为您执行实际的AJAX 请求,在幕后。

这基本上也是 ASP.NET 在声明 [WebMethod] 时所做的事情。它只是一个快捷方式,可能会节省维护时间,例如,如果您的网址发生变化,我怀疑 DWR 也会更新其客户端代码。

我唯一的问题是它似乎污染了命名空间。

要真正回答你的问题,它没有做任何你用普通的 javascript 和 servlet 做不到的事情。