問題タブ [spray-dsl]

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.

0 投票する
1 に答える
420 参照

scala - Spray.io デバッグ ディレクティブ

私は Spray.io をいじっていますが、スプレー デバッグ ディレクティブ logRequestResponse を機能させることができません。ログに出力が表示されません。

ここで何か不足していますか?スプレー構成のどこかでグローバルでデバッグを有効にする必要がありますか? さまざまな場所を試しましたが、どれも期待どおりに機能しませんでした

0 投票する
1 に答える
2049 参照

scala - スプレーのネストされたルートで文字列ディレクティブ エクストラクタを使用する方法

ここで私自身の質問に答える.

スプレーを使用して作成している RESTful-esk サービスに取り組んでいるときに、パスの一部として英数字の ID を持つルートを照合したいと考えていました。これは私が最初に始めたものです:

これはコンパイルに問題はありませんが、scalatest を使用してルーティング構造が正しいことを確認すると、次のような出力が得られて驚きました。

ルートの何が問題になっていますか?

0 投票する
2 に答える
66 参照

scala - Spray.io で Marshaller からの応答コードを設定することはできますか?

dataService が Option[LocationDataResult] を返す次のコード スニペットがあります。dataService が None を返すときに NotFound を設定し、Some( ...) の場合にデータを送り返したいと思います。

私は次のコードを持っています:

マーシャラーから適切な方法を見つけることができず、ルートから完全な機能を介して機能させることができません。

経験豊富な誰かが私にヒントを与えることができますか?ここでいくつかの重要な概念が欠けていますか?

どうも

更新: エラー メッセージ"型 Future[Object] の式は、予期される型 ToResponseMarsallable に準拠していません。

0 投票する
1 に答える
279 参照

scala - 同じ名前の複数のヘッダー

スプレーは、headerValueByName を介して特定の名前を持つ 1 つのヘッダーの抽出のみをサポートします。以下のスプレーコードスニペットで「whatever」という名前のすべてのヘッダーを取得するにはどうすればよいですか? ヘッダーを抽出する何らかの方法が必要です!?

0 投票する
1 に答える
658 参照

scala - スプレー: onSuccess ディレクティブを除外します

onSuccess ブロックを新しいメソッドに分解するように、次のコード フラグメントを変更したいと思います。JSON マーシャリングは引き続き機能するはずです。

私は次のような方法が欲しいです:

単純なリファクタリングはうまくいきません。多くの組み合わせを試しましたが、正しい署名もコードも機能していません。

例:

署名を変更すると、別のエラーが発生します。

多分これは簡単なことですが、私はスプレーするのが初めてです。ですので、どなたかヒントを頂ければ幸いです。

ありがとう

0 投票する
1 に答える
99 参照

scala - 異なるスプレー ディレクティブを 1 つのディレクティブにネストする方法

認証用のディレクティブが 1 つあるとします。認証後、ログインしたいと思います。これは私がこれまで行っていることです:

そのため、認証が必要になるたびに 2 つのディレクティブを使用するのではなく、それを 1 つのディレクティブに変換したいと考えています。

フラット マップを使用してみましたが、authenticate が Directive1 を返し、logRequestResponse が Directive0 を返すため、うまくいかないようです。

ということで map で試してみたのですが、私のロギングマグネット機能には入らないようです。

リクエスト オブジェクトとレスポンス オブジェクトも必要なので、logme を直接呼び出すこともできません。

異なるディレクティブ タイプを返す 2 つのディレクティブを持つ新しいディレクティブを作成する方法はありますか? ありがとう。

0 投票する
1 に答える
210 参照

scala - スプレー HttpService で Dispatcher を使用する

私のアプリケーションには、SprayCan を使用する API があります。アプリケーションでは、ブロッキング コードには、特定のリソースごとに個別のディスパッチャがあります。

独自の Dispatcher を使用して構成することにより、API サービスがアプリケーションによってブロックされないように保護する必要がありますか?

また、より大容量のリクエストを処理するために API サービスに Router を使用するのは一般的な方法ですか?

0 投票する
2 に答える
105 参照

scala - スプレーでの ReST API のパス解析

ユーザーが呼び出した REST サービスを解析するために、Spray に次のコードがあります。

問題は、期待どおりに動作しないことです。私はコードから次の動作を期待しています:

しかし、クエリに対して次の結果が得られます。

0 投票する
1 に答える
256 参照

akka - Akka HTTP の (Spray Routing DSL) ルートのドキュメントを生成します

特定のルート インスタンスのドキュメントを生成できる、スプレー ルーティング DSL/Akka HTTP 用のカスタム拡張機能/ディレクティブはありますか?

0 投票する
2 に答える
856 参照

spray - スプレー: パイプラインで JsArray または JsObject (つまり JsValue) の応答をアンマーシャリングする方法

データを集約するサービスを作成しており、未知の JSON ドキュメントを読み取ることができる必要があります。次のように定義されたパイプラインがあります。

これは JsObject では機能しますが、JsArray では機能しません。JsArray に変更すると、(もちろん) JsObject では機能しません。私の回復メソッドは JsObject を返します。

これを JsValue として定義するか、ルート形式を適用できるようにしたいのですが、JsValue の場合、次のコンパイラ エラーが発生します。

タイプ Spray.httpx.unmarshalling.FromResponseUnmarshaller[spray.json.JsValue] の証拠パラメーターの暗黙的な値が見つかりませんでした

そしてルートフォーマットもエラーです。

必要なことを達成する方法がわかりません。助けていただければ幸いです。