在开发web api的时候我们需要调用post方法或自定义的方法的时候,还有使用session来保存相关的数据,首先我介绍一下如何在web api中使用session,在使用session的时候我们需要配置保存session机制,启用session功能,在Global.asax文件中重写如下方法:
public override void Init()
{
this.PostAuthenticateRequest += (sender, e) => HttpContext.Current.SetSessionStateBehavior(SessionStateBehavior.Required);
base.Init();
}
重写上述方法之后我们就可以在web api中使用session功能了,
第二我们如何调用自己定义的方法,首先我们在WebApiConfig.cs文件中如下配置:
public static void Register(HttpConfiguration config)
{
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{action}/{paramas}",
defaults: new { paramas = RouteParameter.Optional }
);
}
这个时候我们可以调用自定义的方法了,但是这还不全你会发现有些没有Get开头的方法你调用不了,这个时候我们需要在需要调用的函数前面加上[HttpGet],如下所示
[HttpGet]
public HttpResponseMessage Post(string paramas)
{
LogService.Write("Post方法请求成功!");
return HttpMessage.MessageToJson(paramas);
}
利用这种方式我们可以用Get方法调用任意自己想定义的方法,以上只是一些简单的配置,有错误希望大家帮我改正,谢谢。