在请求处理期间进行网关调用后如何防止 RequestLogsFeature 跳过请求
How to prevent RequestLogsFeature from skipping a request after a Gateway call is made during request handling
如果请求处理程序使用内置 IServiceGateway
网关调用的请求将被记录,而不是原始请求。
例如
public object Post(DoSomething request)
{
/* handle request */
Gateway.Send(new DoSomethingElse());
//Request.Items[Keywords.HasLogged] == true at this point
return result;
}
RequestLogsFeature
将记录 DoSomethingElse
请求,设置 Request.Items[Keywords.HasLogged] = true
并且不记录 DoSomething
请求。
有没有办法阻止 Gateway
将 Keywords.HasLogged
标志设置为 true?谢谢!
这 issue has already been resolved ServiceStack 不会记录或标记正在处理的请求。因此,如果您在 NuGet 上升级到最新的 v5.4,您应该不会再遇到这个问题。
如果请求处理程序使用内置 IServiceGateway
网关调用的请求将被记录,而不是原始请求。
例如
public object Post(DoSomething request)
{
/* handle request */
Gateway.Send(new DoSomethingElse());
//Request.Items[Keywords.HasLogged] == true at this point
return result;
}
RequestLogsFeature
将记录 DoSomethingElse
请求,设置 Request.Items[Keywords.HasLogged] = true
并且不记录 DoSomething
请求。
有没有办法阻止 Gateway
将 Keywords.HasLogged
标志设置为 true?谢谢!
这 issue has already been resolved ServiceStack 不会记录或标记正在处理的请求。因此,如果您在 NuGet 上升级到最新的 v5.4,您应该不会再遇到这个问题。