В настоящее время я разрабатываю веб-приложение SPA с использованием внешнего интерфейса Angular 8 и внутреннего интерфейса ASP.NET Core. Я использую .NET Core Data Protection Api для защиты идентификаторов объектов, прежде чем возвращать их обратно клиенту angular. В моем приложении есть страница, которая обращается к API для получения категорий.
Каждая категория в списке возвращаемых категорий имеет свойство Id, которое представляет собой защищенную строку (защищенную с помощью .NET Core Data Protection Api). Эти категории являются источником данных для раскрывающегося списка на странице. Свойство Id - это атрибут значения каждой опции в раскрывающемся списке.
На той же странице у меня есть еще один вызов API, чтобы получить выбранную категорию вошедших в систему пользователей. Эта категория является тем же объектом, что и категории, упомянутые выше (вместе с защищенным свойством Id).
Что я хочу сделать сейчас, так это установить выбранное значение раскрывающегося списка с выбранной категорией для пользователя. Поскольку я использую Data Protection Api, все зашифрованные идентификаторы в раскрывающемся списке будут отличаться от идентификатора выбранной категории, и ни один из них не будет соответствовать идентификатору выбранной категории для пользователя. Итак, на данный момент у меня нет возможности выбрать вариант в раскрывающемся списке.
Таким образом, возникает вопрос, используя .NET Core DataProtection Api, как я могу выполнить отдельные вызовы Api и в каждом вызове убедиться, что, когда я защищаю конкретное целочисленное значение, полученные защищенные строки (если идентификаторы одинаковы) идентичны , поэтому я могу успешно сравнить их на клиенте.