检查服务端点的请求标头的最佳方法是什么?
ContactService : Service
阅读此https://github.com/ServiceStack/ServiceStack/wiki/Access-HTTP-specific-features-in-services我很好奇进入界面的首选方式。
谢谢你,斯蒂芬
检查服务端点的请求标头的最佳方法是什么?
ContactService : Service
阅读此https://github.com/ServiceStack/ServiceStack/wiki/Access-HTTP-specific-features-in-services我很好奇进入界面的首选方式。
谢谢你,斯蒂芬
在 ServiceStack服务中,您可以通过以下方式访问IHttpRequest和IHttpResponse对象:
public class ContactService : Service
{
public object Get(Contact request)
{
var headerValue = base.Request.Headers[headerKey];
//or the same thing via a more abstract (and easier to Mock):
var headerValue = base.RequestContext.GetHeader(headerKey);
}
}
IHttpRequest 是底层 ASP.NET HttpRequest 或 HttpListenerRequest 的包装器(取决于您是托管在 ASP.NET 上还是自托管 HttpListener)。因此,如果您在 ASP.NET 中运行,则可以通过以下方式获取底层 ASP.NET HttpRequest:
var aspnetRequest = (HttpRequest)base.Request.OriginalRequest;
var headerValue = aspnetRequest.Headers[headerKey];