javascript - SignalR 是否适合获取服务器端(后台)处理的结果?

标签 javascript asp.net-mvc signalr

我有一个简单的 ASP.NET MVC 网页,用户在其中上传文件,在服务器端处理文件,然后一些结果必须显示在同一个页面中。

我选择了 ajax 上传(因此没有在 [上传] 按钮上完成页面重新加载),效果很好。调用文件的 Controller 的 Action 方法,一切OK。我正在使用上传组件,似乎“成功:”回调无法让我使用react。

* 编辑 除了成功回调似乎不可用之外,处理需要 60 秒。我想返回上传 ajax 调用立即,然后处理(可选地在客户端显示进度),并在处理完成时显示结果。 结束编辑 *

我的第一个 KISS(业余)想法是:好的,然后将处理结果存储在服务器端的 session 中,然后从客户端 ajax 轮询一个操作方法,返回结果。顺便说一句,它不是那么亲吻。

我的第二个想法是:好吧,那就去专业,使用 SignalR。 (我从来没有用过)。现在我正在看聊天教程,我有疑问:对于这个简单的任务,SignalR 不是太过分了吗?还有:SignalR 是否完全适合这项任务?

最佳答案

我将 SignalR 用于类似的事情:生成新闻通讯并将其发送给 10+k 个收件人。整个过程大约需要 5 分钟,管理员可以通过 SignalR 跟踪进度。

SignalR 最初看起来很复杂,但实际上并非如此。我要说的优点之一是易于使用。在您的处理过程中,将更新推送到客户端非常简单。让它在客户端工作只需要少量的 javascript 行。

我猜这里的矫枉过正部分是你总是只向 1 个人广播。

关于javascript - SignalR 是否适合获取服务器端(后台)处理的结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35982304/

相关文章:

javascript - 多个不同单词的正则表达式,在空格之间

javascript - 如何从 JavaScript 读取脚本标签中的 JSON?

html - 如何在 ASP.Net MVC 中设置默认按钮

c# - 在网站内添加 WCF 服务以进行发布

wcf - 使用 WCF(或类似)将通知从服务器推送到客户端

SignalR - 无法加载集线器方法

android - 向移动 whiteout APNS 或 GCM 发送推送通知

javascript - 使用 Ajax,在 MVC 中提交时文本框不清除

javascript - 找出 Jquery ajax 请求被重定向到的位置

javascript - 将数据从 MVC Controller 传递到 Angular View ,而不在最终 html 中显示数据值