Ця стаття є дзеркальною статтею машинного перекладу, будь ласка, натисніть тут, щоб перейти до оригінальної статті.

Вид: 61280|Відповідь: 6

[Джерело] ASP.NET WebApi використовує MessageHandlers для уніфікації формату моделі інтерфейсу повернення

[Копіювати посилання]
Опубліковано 28.10.2020 13:29:28 | | | |
Сценарій: коли фронтенд викликає бекенд API, ми хочемо, щоб бекенд повернув уніфікований інтерфейс моделі JSON, а дані, повернені різними інтерфейсами, обгорнуті в поле даних уніфікованого інтерфейсу.

Початковий підхід полягав у поверненні одного й того ж об'єкта моделі для всіх налаштувань інтерфейсу, що можна було зробити, але це було трохи багатослівно.

У ASP.NET WebAPI, повному HTTP-запиті, блок-схема виглядає так:



Моє власне розуміння MessageHandlers — це проміжне програмне забезпечення Middleware у ASP.NET Core.

Наприклад:

Виявляється, він повертає json контент:

["value1", "itsvse.com"]
Ми хотіли б повернути наступний формат:

{"success":true,"message":"ok","data":["value1","itsvse.com"]}
Усі моделі повернення інтерфейсу містять поля, такі як успіх, повідомлення тощо.

Модель уніфікованої сутності відповіді


Створіть новий об'єкт ApiHandler з таким кодом:

Зареєструйте власний MessageHandlers у конфігураційному файлі WebApiConfig з таким кодом:

Використовуйте стандартний контролер ValuesController у новому проєкті та модифікуйте його наступним чином:

Спробуйте отримати доступ до нашого інтерфейсу API, рендеринг виглядає так:



(Кінець)





Попередній:Графічний інтерфейс CentOS 8 та перемикач командного рядка
Наступний:Сервіс на основі .NET Core на Linux
 Орендодавець| Опубліковано 23.02.2021 17:17:21 |
jQuery перехоплює результати, які повертає Ajax
https://www.itsvse.com/thread-9570-1-1.html
Опубліковано 13.07.2021 18:20:54 |
тест
Опубліковано 08.03.2022 13:30:50 |
Вчитися вчитися
Опубліковано 05.06.2022 22:34:47 |
test1test1
Опубліковано 24.09.2022 14:01:07 |
Оперативне:Автори забанені або видалений контент автоматично блокується
Опубліковано 28.11.2022 21:26:50 |
Це саме те, чого я хочу
Застереження:
Усе програмне забезпечення, програмні матеріали або статті, опубліковані Code Farmer Network, призначені лише для навчання та досліджень; Вищезазначений контент не повинен використовуватися в комерційних чи незаконних цілях, інакше користувачі несуть усі наслідки. Інформація на цьому сайті надходить з Інтернету, і спори щодо авторських прав не мають до цього сайту. Ви повинні повністю видалити вищезазначений контент зі свого комп'ютера протягом 24 годин після завантаження. Якщо вам подобається програма, будь ласка, підтримуйте справжнє програмне забезпечення, купуйте реєстрацію та отримайте кращі справжні послуги. Якщо є будь-яке порушення, будь ласка, зв'яжіться з нами електронною поштою.

Mail To:help@itsvse.com