問題タブ [ktor]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
kotlin - Ktor - 静的コンテンツ ルーティング
Ktor が静的コンテンツのルーティングをどのように処理しているかをよりよく理解したいと思います。静的フォルダー (作業ディレクトリ) に次の階層があります。
それらすべてにサービスを提供したいと思います。だから私は直接このコードを使用していましたrouting
:
これは非常にうまく機能しますが、問題は、私の小さいものを含むすべてのリクエストを処理していることget
です:
一般的に、Ktor で静的コンテンツを処理するには何が最適でしょうか?
ありがとうございました
kotlin - Ktor (Kotlin) でパイプラインのさまざまな部分間でデータを渡す方法
API を構築し、intercept(ApplicationCallPipeline.Call){}
各ルートの実行前にいくつかのロジックを実行するために使用しています。私は、intercept() メソッドから呼び出されたルートにデータを渡す必要がありcall.attributes.put()
、intercept() で次のように使用してデータを設定しています。
val userKey= AttributeKey<User>("userK")
call.attributes.put(userKey, userData)
でuserDataを取得しcall.attributes[userKey]
ます。何が起こるかというとcall.attributes[userKey]
、属性を設定した Intercept() メソッドでのみ機能します。必要なルートでは機能しません。それは私を投げます
java.lang.IllegalStateException: No instance for key AttributeKey: userK
物事を正しい方法で行っているのだろうか
kotlin - Ktor テスト エンジン - ロギング
ktor テスト エンジンで単体テストを実行していますが、すべてがローカルで完璧です。ただし、Travis にデプロイすると、テストが失敗し、テスト エンジンが正しく実行されていないようです。
残念ながら、トレースモードでは十分な情報がありません。( <logger name="io.ktor.server.testing" level="TRACE"/>
)
調査のためにさらに多くのログを有効にする方法を知っていますか? または、それを修正する他のアイデアがあれば?
Travis が時代遅れではなく、推奨されていないことを教えていただければ、私も切り替えることができます。
ありがとうございました