一 使用授权过滤器常用参数:
1.HttpContext.Response.Cookies//(向客户端缓存值[Key:Value])
2.HttpContext.Request.Query//(客户端传送过来的[Key:Value]数据)可以通过下标获取key和value
3.HttpContext.Request.QueryString//(客户端传送过来的[Key:Value]数据)可以通过下标获取key和value
4.HttpContext.Response.Redirect() //页面跳转
二 使用异常过滤器常用参数:
1.HttpContext.RouteData.Values[“controller”] //获取访问的控制器
2.HttpContext.RouteData.Values[“controller”] //获取访问的方法
3.HttpContext.Exception.Message //获取异常信息
三 .NetCore配置跨域处理,允许所有来源:
1.//在StartUp类的ConfigureServices方法中添加如下代码:
services.AddCors(item=>
item.AddPolicy(“自定义的跨域策略名称”,
item =>item.AllowAnyOrigin())
);
2.//允许一个或多个具体来源:
services.AddCors(options =>
{
// Policy名称 CorsPolicy 是自订的,可以自己改
options.AddPolicy(“跨域规则的名称”, item=>
{
// 設定允許跨域的來源,有多個的話可以用,隔開
item.WithOrigins(“http://localhost:1000”,“http://127.0.0.1”)
.AllowAnyHeader()
.AllowAnyMethod()
.AllowCredentials();
});
});
四 Configure方法中添加以下代码,以上跨域问题取其中一个
item.UseCors(“自定义的跨域策略名称”);//必须位于UserMvc之前
item.UseMvc();
五 指定某个controller或者action跨域
局部跨域第一种用法:
1.ConfigureServices方法不变,删去Configure中的item.UseCors()方法
2.在Controller顶部或者Action方法顶部加上[EnableCors(“自定义的跨域策略名称”)]特性,例如
[EnableCors(“自定义的跨域策略名称”)]
[Route(“api/[controller]”)]
public class ContactController : Controller
{
}
六 禁止跨域:
禁止跨域在Controller或者Action加上[DisableCors]特性即可禁止跨域
[HttpGet(\”{id}\”)]
[DisableCors]
public string Get(int id)
{
return “value”;
}