您好,登錄后才能下訂單哦!
Swagger在ASP.NetCore項(xiàng)目中使用的方法?相信很多沒(méi)有經(jīng)驗(yàn)的人對(duì)此束手無(wú)策,為此本文總結(jié)了問(wèn)題出現(xiàn)的原因和解決方法,通過(guò)這篇文章希望你能解決這個(gè)問(wèn)題。
什么是swagger
使人和計(jì)算機(jī)在看不到源碼或者看不到文檔或者不能通過(guò)網(wǎng)絡(luò)流量檢測(cè)的情況下能發(fā)現(xiàn)和理解各種服務(wù)的功能。
Swagger™ 的目標(biāo)是為 REST APIs 定義一個(gè)標(biāo)準(zhǔn)的,與語(yǔ)言無(wú)關(guān)的接口。只需要按照它的規(guī)范去定義接口及接口相關(guān)的信息。再通過(guò)Swagger衍生出來(lái)的一系列項(xiàng)目和工具,就可以做到生成各種格式的接口文檔,生成多種語(yǔ)言的客戶端和服務(wù)端的代碼,以及在線接口調(diào)試頁(yè)面等。
所帶來(lái)的幫助
當(dāng)項(xiàng)目處于啟動(dòng)階段
如果有了穩(wěn)定的后臺(tái)框架,直接依據(jù)業(yè)務(wù)需求編寫(xiě)服務(wù)端被調(diào)用層的代碼(即controller及其入?yún)⒊鰠?duì)象),然后通過(guò)Swagger生成相關(guān)描述文件,使用者就可以直接使用了。
如果后臺(tái)框架不成熟或在設(shè)計(jì)中,但是依據(jù)業(yè)務(wù)需求我們可以完成更多的工作而不是等待,先根據(jù)數(shù)據(jù)需求編寫(xiě)Swagger描述文件,通過(guò)該描述文件生成接口文檔,指引項(xiàng)目的相關(guān)開(kāi)發(fā)。
當(dāng)項(xiàng)目處于迭代階段
在項(xiàng)目的持續(xù)開(kāi)發(fā)中,后端人員無(wú)需關(guān)注Swagger描述文件和接口文檔,有需求變更導(dǎo)致接口變化,可直接編程實(shí)現(xiàn),然后生成新的描述文件和接口文檔后,給到前端即可。
使用Swagger
首先,先創(chuàng)建一個(gè)新的WebAPI項(xiàng)目,并在Nuget中找到對(duì)應(yīng)的包,搜索Swashbuckle會(huì)出現(xiàn)很多應(yīng)用包,可以根據(jù)描述選擇自己需要的引用。我在這里使用的是Swashbuckle.AspNetCore.Filters
接下來(lái)在Startup中插入如下代碼
注冊(cè)服務(wù)
services.AddSwaggerGen(options => { options.SwaggerDoc("v1", new OpenApiInfo { Title = "HTTP API 目錄", Version = "v1", Description = "目錄微服務(wù)HTTP API。" }); });
中間件
//啟用中間件服務(wù)生成Swagger作為JSON終結(jié)點(diǎn) app.UseSwagger(); //啟用中間件服務(wù)對(duì)swagger-ui,指定Swagger JSON終結(jié)點(diǎn) app.UseSwagger().UseSwaggerUI(c => { c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1"); });
看完上述內(nèi)容,你們掌握Swagger在ASP.NetCore項(xiàng)目中使用的方法的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。