Jakeuj's Notes master Help

ABP 新手教學 No.7 建立WebApi

ABP (ASP.NET Boilerplate) 應用程式開發框架 新手教學 No.7 建立WebApi

ABP (ASP.NET Boilerplate) 應用程式開發框架 新手教學 No.0 索引

ABP可以自動以應用服務產生WebApi

關於WebApi設定的部分ABP預設已經會自動將public的service做成WebApi

預設是用Post呼叫,這邊一方面方便測試,另一方面稍微示範一下怎樣改成Get呼叫

WebApi設定位於 MyCompany.MyProject.WebApi\Api\MyProjectWebApiModule.cs

using System.Reflection; using System.Web.Http; using Abp.Application.Services; using Abp.Configuration.Startup; using Abp.Modules; using Abp.WebApi; using Abp.WebApi.Controllers.Dynamic.Builders; using Abp.Web; namespace MyCompany.MyProject.Api { [DependsOn(typeof(AbpWebApiModule), typeof(MyProjectApplicationModule))] public class MyProjectWebApiModule : AbpModule { public override void Initialize() { IocManager.RegisterAssemblyByConvention(Assembly.GetExecutingAssembly()); //http://localhost/api/services/app/player/getPlayers DynamicApiControllerBuilder .ForAll<IApplicationService>(typeof(MyProjectApplicationModule).Assembly, "app") .ForMethods(builder => { builder.Verb = HttpVerb.Get; }) .Build(); Configuration.Modules.AbpWebApi().HttpConfiguration.Filters.Add(new HostAuthenticationFilter("Bearer")); } } }

這邊我在DynamicApiControllerBuilder的.ForAll與.Build();之間加上了.ForMethods片段程式碼

.ForMethods(builder => { builder.Verb = HttpVerb.Get; })

用HttpVerb.Get指定以Get方式呼叫,如此一來我們就可以直接在執行程式在瀏覽器上以網址方式測試WebApi

http://localhost/api/services/app/player/getPlayers

執行後開啟以上網址即可呼叫我們先前完成的Service (有port請自行加上)

1469680650 66273

下一篇

ABP (ASP.NET Boilerplate) 應用程式開發框架 新手教學 No.8 單元測試

參照

一步一步使用ABP框架搭建正式項目系列教程

Jakeuj

PS5

  • C#

  • 回首頁

本文章從點部落遷移至 Writerside

14 October 2025