У меня есть несколько веб-API, они должны выполнить некоторую базовую проверку токена перед выполнением основного кода (MyLogic ......). Могу я узнать, как лучше всего это сделать. Итак, код подтверждения токена может быть повторно использован всеми разными API?
public async Task<IHttpActionResult> Get(string txtPlaceId)
{
try
{
HelloSecurityViaDB helloSecurity = new HelloSecurityViaDB(db);
String token = RequestServices.GetHeaderToken(Request);
String userIpAddress = RequestServices.GetIpAddress(Request);
if (helloSecurity.IsValidToken(token, userIpAddress) == TrackingType.Successful)
{
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
// Different web api will have different logic (MyLogic....) here //
...MyLogic......
// Code Above and below MyLogic will be same for all API //
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
databaseHelloLogger.AddEvent(((System.Web.HttpContextWrapper)Request.Properties["MS_HttpContext"]).Request, DateTime.Now, token, TrackingType.Successful);
if (responseFromServer != null)
{
return Ok(responseFromServer);
}
else
{
return NotFound();
}
}
else
{
return Unauthorized();
}
}
catch (Exception ex)
{
return NotFound();
}
}
}