不会。每个ajax请求都会在同一个会话中处理,不会引起会话的重新启动。以下是说明:
在web.config文件中添加 sessionState 元素并设置 cookieless 属性为 true,以便可以清楚地看到会话 ID 发生了更改。
实现一个 WebAPI 控制器的方法用于处理 ajax 请求。
public class AjaxController : ApiController
{
[HttpGet]
public string GetSessionId()
{
return HttpContext.Current.Session.SessionID;
}
}
编写javascript代码,使用ajax请求该方法并观察会话 ID 是否更改。
$.ajax({
type: "GET",
url: "api/Ajax/GetSessionId",
success: function (data) {
console.log(data);
}
});
运行代码并观察控制台输出,会话 ID 不会更改。