2017年2月28日火曜日

swagger ui のスタイルを変更してみた

概要

swagger ui にスタイルを当ててみました
使用するアプリケーションはこれまでに作成した TODO アプリを使用します

環境

  • CentOS 6.7 64bit
  • go-swagger dev
  • golang 1.6
  • swagger ui v2.2.10

事前準備

Apache Httpd をインストールする

  • yum -y install httpd
  • service httpd start

TODO アプリの CORS を有効にする

  • go get github.com/rs/cors
  • cd $GOPATH/src/github.com/hawksnowlog/todo-list
  • emacs restapi/configure_todo_list.go
import "github.com/rs/cors"
func setupGlobalMiddleware(handler http.Handler) http.Handler {
        handleCORS := cors.Default().Handler
        return handleCORS(handler)
}

修正できたらビルドしてアプリを起動します

  • go fmt restapi/configure_todo_list.go && go install ./cmd/todo-list-server/
  • todo-list-server –host=0.0.0.0 –port=18080

swagger ui のインストールと起動

swagger ui の dist 配下に index.html やら必要な静的ファイルがあるのでこれを Apache の DocumentRoot 配下に配置するだけです
配置できたら http://xxx.xxx.xxx.xxx/dist/ にアクセスしてみましょう

すると、swagger ui が表示されるので、ヘッダにあるフィールドに http://xxx.xxx.xxx.xxx:18080/swagger.json を入力し「Explore」を選択します
でとりあえず自分のアプリでデフォルトの swagger ui が表示されると思います
swagger_ui1.png

スタイルの設定

今回はすでに公開されているスタイルを使ってみたいと思います

<link href="css/theme-feeling-blue.css" media="screen" rel="stylesheet" id="sut" type="text/css">

を head タグの <!-- Some basic translations --> の直下にコピペします
そして再度 http://xxx.xxx.xxx.xxx/dist/ にアクセスするとスタイルが変わっていると思います

最後に

swagger ui でスタイルを変更する方法を紹介しました
公式の swagger ui は go-swagger で表示させた ui のスタイルとは全く違うデザインになっていました

今回はすでに公開されているスタイルを使いましたが、直接 css や html を変更しても問題ないと思います

参考サイト

0 件のコメント:

コメントを投稿