あしたからがんばる

プログラミングの話と時々サッカーの話

よくあるWebページを作る

前回のktorのコードに加えて、 application.confとlogback.xmlを追加して、watchの設定もした。 あと、便利らしいのでIntelliJの設定で import * をデフォルトで使うようにしておいた。

参考にしたのはこの辺り。

引き続き、website の quickstart をやっていく。 テンプレートエンジンは無心でfreemarkerを使う。 Website - Quick Start - Ktor

とりあえず、ログインフォームとログイン後画面の表示までやってみて、気になった点だけ雑に書く。

まず、ktor関係ないだろうけど、freemarkerのvariable定義は便利そう。この辺は気にしたことすらなかった。。 auto completion 効くようになるらしい。

<#-- @ftlvariable name="data" type="com.example.IndexData" -->
<html>
    <body>
        <ul>
        <#list data.items as item>
            <li>${item}</li>
        </#list>
        </ul>
    </body>
</html>

あと、partial content云々の話があったので、videoタグで動画を表示してみた。 動画は適当に画面収録して、movからwebmにffmpeg使って変換した。 無事にシークも実現できてた。 response statusも206だし、本当にplugin installするだけでpartial content(rangeヘッダのやつ)対応できるんだなぁ。便利な世の中。

f:id:mwtnb:20191127012321p:plain
写経ftlのリスト表示と追加のvideo

ログイン周りも写経してみたけど、セッションといいつつ単にクッキーに文字列突っ込んでるだけだから、そのうちちゃんと作んないといけない。 f:id:mwtnb:20191127013018p:plain

この辺り読まないと。 Authentication - Servers - Ktor

まぁその辺は当面はすっ飛ばして、次はAPI作るかフロントをやっていこう。NuxtとかGraphQLを試してみたい所存。