18 lines
664 B
C#
18 lines
664 B
C#
using Microsoft.AspNetCore.Mvc.Filters;
|
|
|
|
public class UserActionFilter : IActionFilter
|
|
{
|
|
public void OnActionExecuted(ActionExecutedContext context)
|
|
{
|
|
if (context.HttpContext.Request.Method != "GET")
|
|
{
|
|
var user = context.HttpContext.Connection.RemoteIpAddress;
|
|
var path = context.HttpContext.Request.Path;
|
|
var method = context.HttpContext.Request.Method;
|
|
|
|
// 写入全局操作日志文件或数据库
|
|
File.AppendAllText("user_actions.log", $"{DateTime.Now} | {user} | {method} {path}\n");
|
|
}
|
|
}
|
|
public void OnActionExecuting(ActionExecutingContext context) { }
|
|
} |