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

Вид: 24900|Відповідь: 4

[WebAPI] Моя перша збірка веб-сервісу ServiceStack

[Копіювати посилання]
Опубліковано 15.01.2018 11:06:52 | | | |
Я хочу спробувати різницю між ServiceStack Web і вбудованим вебAPI Microsoft, і побачити, які вони переваги, тож спробуйте створити додаток ServiceStack Web Service вже сьогодні

1: Створити новий веб-порожній проєкт .NET 4.5, а потім використати команду nuget для встановлення ServiceStack:

Версія .net має бути більшою або рівною версії 4.5, тому проєкт 4.0 не буде успішно встановлений! Як показано на рисунку нижче.



2: Створити нову папку моделі та сервісу

Створіть сутність запиту та відповіді з таким кодом:

3: Створити інтерфейс сервісу у папці сервісу

4: Створити новий глобальний клас застосунків під назвою Global.asax для цього проєкту, і код виглядає так:




5: Змінити конфігурацію web.config, додати новий вузол system.webServer, і повна конфігурація виглядає так:



На даний момент наш сервіс завершено, запущена програма може побачити інтерфейс таким чином,GetAllUserInfoRequest і GetByAgeUserInfoRequest можна розуміти як реальні методи викликуПараметри, визначені в ньому, можна інтерпретувати як параметри запиту методу, як показано на рисунку нижче:



Методи сервісу в ServiceStack називаються Any, Get і Post, які також підтримуються типами запитів у ServiceStack.Це означає, що сервіс можна викликати як у HTTP Get, так і в HTTP Post。 Це посилює та спрощує впровадження вебсервісів у стилі RESTFull. Просто додайте любов [Route(...)] до цих методів Атрибути. У ServiceStack,Різниця між методами та методами визначається параметрами сервісу та об'єкта запиту Request DTO, замість того, щоб розрізняти за назвою методу, як у WCF. Це означаєОб'єкт запиту DTO не може бути повторно використаний між кількома сервісами у ServiceStack

Додавання параметра format після параметра get request може повернути тип відповіді, наприклад: format=json, format=xml тощо, і, здається, jsonp-формат також підтримується.

Наприклад: http://localhost:52079//json/reply/GetAllUserInfoRequest?format=xml



Підсумовуючи, порівняно з веб-API Microsoft, ServiceStack, здається, не має уявлення про метод у вебі, це інша сутність запиту — це метод, він може автоматично генерувати інтерфейсні документи, а формат відповіді можна повернути через формат (хоча Microsoft теж можливий, але відчувається простішим, ніж у Microsoft)

Джерело: https://www.cnblogs.com/woxpp/p/5012947.html

https://msdn.microsoft.com/zh-cn/magazine/dn342871.aspx

https://github.com/ServiceStack/ServiceStack/wiki

Нарешті, додайте вихідний код проєкту!

Туристи, якщо ви хочете побачити прихований контент цього допису, будь ласкаВідповідь





Попередній:System.NotImplementedException:“未实现该方法或操作。”
Наступний:Visual Studio додає потужні можливості редагування Vim, що ускладнює запобігання!
Опубліковано 06.03.2018 15:28:29 |
Дивись, як тобі?
Опубліковано 14.04.2019 20:08:39 |

Дивись, як тобі?
Опубліковано 08.08.2019 08:29:02 |
Веб-сервіс ServiceStack
Застереження:
Усе програмне забезпечення, програмні матеріали або статті, опубліковані Code Farmer Network, призначені лише для навчання та досліджень; Вищезазначений контент не повинен використовуватися в комерційних чи незаконних цілях, інакше користувачі несуть усі наслідки. Інформація на цьому сайті надходить з Інтернету, і спори щодо авторських прав не мають до цього сайту. Ви повинні повністю видалити вищезазначений контент зі свого комп'ютера протягом 24 годин після завантаження. Якщо вам подобається програма, будь ласка, підтримуйте справжнє програмне забезпечення, купуйте реєстрацію та отримайте кращі справжні послуги. Якщо є будь-яке порушення, будь ласка, зв'яжіться з нами електронною поштою.

Mail To:help@itsvse.com