Есть ли решение для эффективной проверки целостности каждой конечной точки API? - PullRequest
0 голосов
/ 14 апреля 2019

у нас есть API, для которого мы выполняем проверку целостности. Т.е. проверка того клиента, который запрашивает операцию, может получить информацию. прямо сейчас мы реализуем атрибут валидации в разных командах для каждой конечной точки, это ужасная боль. каждая сигнатура метода, которая отличается параметрами (т. е. один является классом некоторого вида, а другой является строкой идентификатора), создает новый атрибут, и теперь у нас есть тонны атрибутов, которые проверяют целостность для каждого запроса, и мы сталкиваемся в значении кода, если кто-то уже создал этот атрибут, и он не был объединен с dev, мы не можем этого знать. Кроме того, нам нужен способ (сейчас это модульные тесты), который проверяет, что все методы mvc покрыты этой проверкой. Есть ли эффективный общий и более концентрированный способ сделать это?

будут рады вашим комментариям, вот пример кода -

В моих предложениях использовалось отражение в одной службе валидации. или просто не используя атрибуты и просто общий класс, но это не обеспечивает

[DashboardActionValidation (eDashboardActions.ViewAccountStatements)] открытый класс someController: basecontroller { только для чтения IValidationService _someService;

    public someController (IAccountStatementService accountStatementService, IValidationService _omeService, validationService) : base(validationService)
    {

    }

    [HttpPost]
    [SomeIntegrityCheck("model")]
    public ActionResult GetAll(AccountStatementRequestModel model)
    {
        return new JsonNetResult(_someService.GetSomeResultToClient(model));
    }

}

Как я уже сказал, я хочу эффективный способ обеспечить это для всего разработанного кода API в компании.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...