怎么在.Net Core WebAPI下給Swagger增加導出離線文檔功能,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
站在用戶的角度思考問題,與客戶深入溝通,找到灞橋網站設計與灞橋網站推廣的解決方案,憑借多年的經驗,讓設計與互聯網技術結合,創造個性化、用戶體驗好的作品,建站類型包括:網站設計、成都做網站、企業官網、英文網站、手機端網站、網站推廣、域名與空間、虛擬空間、企業郵箱。業務覆蓋灞橋地區。
最近剛接觸到Swagger,在github上下載了它的源碼和demo學習了一遍,發現這個組件非常好用,不過不足的是它沒有導出離線文檔的功能,于是乎我就想給它加一個導出功能
Swagger Github開源地址
其實說白了api文檔就是一個html靜態頁面,html可以轉word或者pdf,那問題就變簡單了。
1.想辦法拿到swagger生成的api接口json數據。
2.將json轉化為html。
3.將html轉換成word或者pdf等文件。
1.首先我們要解決第一個問題,要給Swagger的頁面上加上導出按鈕,Swagger提供了接口,我們可以用這個接口將js和css注入進去執行,如圖:
效果如下:
2.拿到swagger生成的文檔數據,我查閱了swagger github上的的源碼找到了他生成文檔的代碼,如下圖:
2.然后我們使用net core的ioc容器注入把這個對象注入到ioc容器中,以備后續使用它,如圖:
3.從ioc容器中取出對象使用,將json對象轉換為html,在將html轉換為需要導出的文件。
如圖:
這里用到了一個RazorEngine ,這是一個微軟封裝的模板引擎,最重要一點它可以脫離mvc使用,可以用它來定制自己的代碼生成器,個人認為它比T4好用,吐槽一下,T4的語法看著是真的別扭。。再看RazorEngine語法看著舒服多了。
是不是很熟悉。
最終效果:
看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注創新互聯行業資訊頻道,感謝您對創新互聯的支持。
網站名稱:怎么在.NetCoreWebAPI下給Swagger增加導出離線文檔功能
鏈接地址:http://vcdvsql.cn/article46/jhjihg.html
成都網站建設公司_創新互聯,為您提供關鍵詞優化、網站設計公司、靜態網站、網站改版、網站維護、微信小程序
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯