默認webapi 不開啓 session 會話支持
所以需要修改配置,手動在 Global 開啓 session 支持
1.重寫 init() 方法
2.開啓session支持
Global.asax
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Http;
using System.Web.Mvc;
using System.Web.Optimization;
using System.Web.Routing;
namespace WebApiCORS
{
public class WebApiApplication : System.Web.HttpApplication
{
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
GlobalConfiguration.Configure(WebApiConfig.Register);
FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
RouteConfig.RegisterRoutes(RouteTable.Routes);
BundleConfig.RegisterBundles(BundleTable.Bundles);
}
public override void Init()
{
//註冊事件
this.AuthenticateRequest += WebApiApplication_AuthenticateRequest;
base.Init();
}
//開啓session支持
void WebApiApplication_AuthenticateRequest(object sender, EventArgs e)
{
//啓用 webapi 支持session 會話
HttpContext.Current.SetSessionStateBehavior(System.Web.SessionState.SessionStateBehavior.Required);
}
}
}