首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >异步控制器方法& Ajax

异步控制器方法& Ajax
EN

Stack Overflow用户
提问于 2015-05-22 07:32:37
回答 2查看 1.2K关注 0票数 0

我的控制器中有这样的方法:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
    [HttpPost]
    public async Task<string> GetMenu(int? Current) {
        await Task.Run(() => System.Threading.Thread.Sleep(60000));
        return "";
    }

我从下面这样的JQuery Ajax请求开始:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$.ajax({
        type: "POST",
        url: '@Url.Action("GetMenu","Products")',
        data: "{}",
        async: true,
        success: function (data) {
            $('#menu-container').html(data);
        },

    });

并且浏览器在处理GetMenu动作的时间内冻结。如何在后台以非阻塞的方式工作?

EN

回答 2

Stack Overflow用户

发布于 2015-05-22 10:23:15

我想你需要这样的东西

html

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<pre id="testpre">
not end
</pre>

JS

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$.post("/Home/ProtocolAjaxHandler", {  }, function (data) {
$("#testpre").html("END");
});

控制器

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[HttpPost]
public ActionResult ProtocolAjaxHandler(object _param)
{
    System.Threading.Thread.Sleep(15000);
    return Json(null);
}
票数 0
EN

Stack Overflow用户

发布于 2015-05-22 10:28:12

如何在后台以非阻塞的方式工作?

正如我在我的博客async doesn't change the HTTP protocol上解释的那样。根据您实际尝试的目的,您可以尝试使用SignalR,也可以使用具有可靠队列和独立后台进程as I allude to in another post的分布式体系结构。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30390868

复制
相关文章
ajax异步提交
已经好久没有更新过文章了,一天天的瞎折腾,这次记录一下ajax的使用,了解这个的起因是想实现后台发送邮件,了解到了异步调用,但是最终还是无法实现我的目的,毕竟程序都不一样,情况也不同,这里就分享一下吧。
用户8099761
2023/05/11
1.8K0
jQuery ajax - ajax() 方法jQuery ajax - ajax() 方法
http://www.w3school.com.cn/jquery/ajax_ajax.asp
一个会写诗的程序员
2018/08/17
14.5K0
JavaScript之Ajax异步
同步调用相对简单,但使用异步调用才是我们真正常用的手段。使用异步调用的时候,需要触发readystatechange事件,然后检测readyState属性即可。这个属性有五个值:
IT工作者
2022/01/15
1.2K0
Ajax 关闭异步请求
在代码中,因为进行了后台的取值操作,导致有些内容还未加载就执行到了新的地方,所以想着 ajax 的异步关闭来解决。
zucchiniy
2019/10/30
4.1K0
Ajax异步&同步请求
Ajax请求最重要的问题是代码执行的顺序。最长遇到的问题是,我们定义一个变量接收ajax异步请求的返回结果,后续代码使用,然而后续代码在使用时该变量为初始值,始终得不到想要的结果!!!
山河木马
2019/03/05
3.1K0
ajax异步操作1
ajaxTest.html <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>ajaxTest.html</title> <script type="text/javascript"> function loadXMLDoc(){ var xmlhttp; if(window.XMLHttpRequest){ xmlhttp = new XMLHttpReques
闵开慧
2018/03/30
9890
Ajax系列——XMLHttpRequest实现Ajax异步请求
1、用原生的JS代码实现AJAX 页面关键部分的JS如下: //创建XMLHttpRequest对象 function createXMLHttpRequest() { if(window.XMLHttpRequest) { // DOM 2浏览器 XMLHttpReq = new XMLHttpRequest(); } else if (window.ActiveXObject) { // IE浏览器 var aVersions = [ "MSXML2.XMLHttp.5.0"
陈树义
2018/04/13
3.1K0
Ajax 异步&同步请求
XMLHttpRequest 支持同步和异步通信。但是,一般来说,出于性能原因,异步请求应优先于同步请求。同步请求阻止代码的执行,这会导致屏幕上出现“冻结”和无响应的用户体验。
奋飛
2019/08/15
3K0
Ajax简单实现文件异步上传的多种方法
void append(DOMString name, DOMString value)
潇洒哥和黑大帅
2019/02/25
1.7K0
JQuery实现AJAX异步提交
文章目录 1. JQuery实现AJAX异步提交 1.1. 准备 1.2. $.ajax({}) 1.2.1. 格式 1.2.2. 实例 1.3. $.get() 1.3.1. 格式 1.3.2. 实现 1.4. $.post 1.4.1. 格式 1.4.2. 实现 JQuery实现AJAX异步提交 准备 点击下载JQurery的文件 添加JQuery的文件: <script type="text/javascript" src="文件路径"></script> $.ajax({}) 格式 其中的url
爱撒谎的男孩
2019/12/31
3.3K0
ajax异步请求不能赋值
在一个ajax请求中,已经获取到回调值,然后给一个外部变量赋值为空,这是什么原因呢?我们先要了解异步和同步的区别。
Petrochor
2022/06/07
7100
ajax异步请求不能赋值
Ajax的异步请求探究
在开发中经常使用ajax去请求接口,而ajax不是一项新的技术,基于原生的XmlHttpRequest对象和html css js共同完成 在了解ajax之前先搞清楚什么是http, 想要了解更多可访问mozllia(霸王龙)的 https://developer.mozilla.org/zh-CN/docs/Web/API/XMLHttpRequest/send# Http
用户9347382
2022/01/10
8650
Ajax 同步与异步请求
ajax对象.open(方式get/post, url地址, [异步true]同步false);
Meng小羽
2019/12/23
2.4K0
jQuery ajax - ajax()方法
什么是 AJAX? AJAX = 异步 JavaScript 和 XML(Asynchronous JavaScript and XML)。
江一铭
2022/06/17
9.4K0
Ajax-数据异步交互1.Ajax简介2.AJAX 实例
AJAX = 异步 JavaScript 和 XML。 AJAX 是一种用于创建快速动态网页的技术。 通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。
Python攻城狮
2018/08/23
1.8K0
Ajax-数据异步交互1.Ajax简介2.AJAX 实例
ajax同步异步返回值
ajax返回参数时必须用同步async: false,异步会出现undefined错误
似水的流年
2019/12/10
1.7K0
ajax同步异步返回值
$.temp = function () { $.ajax({ url : SERVERURL + "Info", type : 'post', data : { userDevice : "web", sessionId : SESSIONID, }, async: false, dataType : 'json', success : function(xhr) { var data = xhr.data; if (xhr.isSuccess ==
似水的流年
2018/01/18
1.8K0
Ajax与jQuery异步加载数据
一次性从服务器数据库中读取数据并传送到前端页面上是不现实的,一方面会加重服务器的压力,另一方面客户的带宽资源也会被占用。Ajax刚好可以解决数据异步加载的问题。Ajax 即“Asynchronous Javascript And XML”(异步 JavaScript 和 XML),是指一种创建交互式、快速动态网页应用的网页开发技术,无需重新加载整个网页的情况下,能够更新部分网页的技术。
里克贝斯
2021/05/21
10.9K0
异步的JavaScript和XML(AJAX)
什么是 AJAX ? AJAX = 异步 JavaScript 和 XML。 AJAX 是一种用于创建快速动态网页的技术,不是新的编程语言,而是一种使用现有标准的新方法。 通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。 工作原理 Ajax的工作原理相当于在用户和服务器之间加了—个中间层,使用户操作与服务器响应异步化。并不是所有的用户请求都提交给服务器,像—些数据验证和数据处理等都交给Ajax引擎自己来做, 只有确定需要
benny
2018/03/06
3.3K0
异步的JavaScript和XML(AJAX)
ssm框架整合+Ajax异步验证
SSM框架是目前企业比较常用的框架之一,它的灵活性、安全性相对于SSH有一定的优势。说到这,谈谈SSM和SSH的不同点,这也是企业常考初级程序员的面试题之一。说到这两套框架的不同,主要是持久层框架Hibernate和MyBatis的不同和控制层框架SpringMVC和Struts2的不同。
呆呆
2021/05/23
9780

相似问题

异步ajax调用和异步c#控制器方法

10

如何从ajax调用异步MVC控制器方法

10

异步控制器还是Ajax?

22

异步控制器和Ajax请求

11

多个AJAX WebAPI异步调用到达控制器方法随机延迟

22
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文