問題タブ [akka-http]
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.
akka - Akka-http:リクエストからカスタムヘッダーを取得するには?
akka-http API へのリクエストで次のヘッダーを送信します: "Content-type": "application/json"
, "Accept": "application/json"
, "AppId": "some_id"
.
akka-http ルートで "AppId" カスタム ヘッダーを取得するにはどうすればよいですか?
ありがとう。
scala - Akka HTTP で基本的な HTTP Post リクエストを作成する慣用的な方法
Akka HTTP ライブラリを使用して基本的な HTTP POST リクエストを作成する方法を理解しようとしています。これは私が思いついたものです:
問題は、私には少し慣用的ではないように見えるということです。FormData から HttpEntity を作成する他の方法はありますか? 特に、Await
データがすぐに利用できるにもかかわらず、Future を使用または返さなければならないという事実は、このような単純なタスクには非常に複雑に思えます。
scala - sbt-native-packager を使用して docker パッケージをビルドするときにマッピングが重複する
sbt-native-packagerを使用して、Scala で Akka HTTP ベースのアプリケーションの Docker イメージをビルドしています。ただし、最近、sbt docker:publishLocal
コマンドの実行時に次のエラーがスローされるようになりました。
json - Akka HTTP: Json 形式の応答をドメイン オブジェクトにアンマーシャリングする方法
私は Akka HTTP を試しており、HttpResponse でドメイン オブジェクトの Json 配列を返すサービスを作成しました。クライアントでは、それをドメイン オブジェクトのソースに変換して、後続のフローとシンクで使用できるようにしたいと考えています。
Json サポートセクションを参照: http://doc.akka.io/docs/akka-stream-and-http-experimental/1.0/scala/http/common/json-support.html
暗黙的な RootJsonReader などを定義する必要はありましたが、FromEntityUnmarshaller を使用する方法がわかりません。
私のコードはここにあります: https://github.com/charlesxucheng/akka-http-microservice
akka-http-microservice activator テンプレートに基づいています。Service2.scala は私のサーバー実装であり、機能しています。AkkaHttpClient.scala はクライアントの実装であり、不完全です。
build.sbt が最新ではないため、ビルドには Gradle を使用してください。
ありがとう。
scala - mapInnerRoute が機能していません
キャッチされた例外を、ログインしているユーザーのユーザー オブジェクトを運ぶ例外にラップするルートを作成しようとしています。ContextRequest
理想的には、その情報を自分で使用するためにに入れることを好みますExceptionHandler
が、それは不変です。
これを行う正しい方法は、この例mapInnerRoute
で説明されているように使用することであると結論付けました。
私はこのように使用します
のコンテンツがcompleteWithUserAwareException
呼び出されることはありません。外側のルートの動的な性質と関係があるのではないかと思います。
ユーザー コンテキスト情報を例外ハンドラに渡すという目標を達成するにはどうすればよいですか?
scala - Akka HTTP ディレクティブ内で Future を使用するにはどうすればよいですか?
現在、次のように、Akka HTTP アプリでリソースを保護するために使用しているディレクティブがあります。
whereLoggedInUser.findByAccessToken()
はデータベースに対してブロッキング クエリを作成します。これを非同期用にask
、同じデータを提供できるアクターに切り替えたいと思いActorRef
ます。ディレクティブのパラメーターとして を渡しても問題ありませんが、その方法がわかりません。Future
ask が返す を処理します。
Akka HTTP に付属する例はどれDirective1
もこれを行うようには見えません (少なくとも私は見つけることができませんでした) が、ディレクティブを返す例がRoute
あります。
私がやりたいことは可能ですか?StandardRoute
ユーザー資格情報のフィールドを持つサブクラスを作成し、それを何らかの形で返す方法はありますか?
scala - akka-http チャンクされた HTTP レスポンスを継続的に送信 (ストリーム)
akka-http
クライアントとサーバーを使用したこの大まかなテスト例があります。
サーバー.scala:
Client.scala:
現時点Server
では、単一の「テスト」で応答するだけです。
1秒ごとに無限ループで「テスト」をチャンク(ストリーム)として送信するように変更するHttpResponse
にはどうすればよいですか?Server
scala - Akka HTTP を使用して認証を行う方法
akka HTTP を使用して認証を行う方法についての適切な説明を探しています。次のようなルートが与えられた場合
ドキュメントには方法の概要が記載されていますが、実際の認証を実行する関連部分は省略されています...
このようなオーセンティケーターの実装例はどこにありますか? ユーザー名とパスワードを指定してユーザーを認証するためのロジックは既にありますが、HTTP 要求 (または RequestContext) からユーザー名/パスワード (または両方を含むトークン) を取得する方法がわかりません。
scala - akka-http チャンク レスポンスの連結
akka-http
チャンクされた応答を返す http サービスに要求を行うために使用しています。関連するコードは次のようになります。
コマンドラインで生成される出力は次のようになります。
データの論理部分 - この場合の json は行末記号 で終わります\r\n
が、問題は、上記の例で明確にわかるように、json が常に単一の http 応答チャンクに収まるとは限らないことです。
私の質問は、受信したチャンク データを完全な json に連結して、結果のコンテナー タイプが残るようにするにはどうすればよいですSource[Out,M1]
かFlow[In,Out,M2]
? の理念を貫きたいと思いakka-stream
ます。
更新:応答は無限であり、集計はリアルタイムで行う必要があることにも言及する価値があります