問題タブ [suave]

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 に答える
1121 参照

f# - Suave でのオプション パラメータを含むルート

次のような Hello World エンドポイントを持つ Web サービスがあります。

ここで、次のようなルートを処理できる追加のエンドポイントを追加したいと思います: http://localhost:8083/hello/{name}?lang={lang}

このルートは、次の URL で機能するはずです。

しかし、それはうまくいかないはずです

http://localhost:8083/hello/FooBar/en-GB

オプションのパラメーターは、パスではなく、クエリ パラメーター文字列でのみ許可する必要があります。

Suaveでこれを達成する方法はありますか?

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

.net - ファイル保存時に Suave アプリをリロードする

私は最近、Suave を使い始めました。私は、yeoman と F# ジェネレーターを使用してプロジェクトをセットアップしました。アプリを実行するには、Fake を使用して実行可能ファイルをビルドし、それを実行します。アプリ ファイル (*.fs ファイルなど) を変更するたびに、実行可能ファイルのビルドと実行のプロセスを繰り返さなければなりません。

ファイルの保存時にアプリが再構築またはリロード/再起動する、開発のためのより良いプロセスはありますか?

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

.net - F# (マイクロ) サービスへのデータの埋め込み

リクエストを受け取り、いくつかのマトリックスとルックアップ テーブルを使用してレスポンスを計算する F# + Suave ベースのマイクロ サービスを作成しようとしています。このサービス、Linux の docker コンテナーで実行する必要があります (モノ以降の CoreCLR)。

これらのマトリックスとルックアップ テーブルには、1000 から最大 100 万の要素 (通常は float) があり、さまざまな IPython ノートブック (Pandas DataFrames) を使用してオフラインで生成されます。

これらのマトリックスをバイナリ形式でサービスに埋め込むことは可能ですか? もしそうなら、それを行うためのベストプラクティスは何ですか?

これまで私は resgen を調べてきましたが、主にローカリゼーションの問題に焦点を当てているようです。また、Pandas DataFrame を CSV にエクスポートし、これらをバイナリ データに変換するスクリプトを作成することも考えています。しかし、これらのバイナリを F#/Suave サービスに埋め込むにはどうすればよいでしょうか? または、より良いアプローチがありますか?

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

.net - F# Suave で /store/category/%s/brand/%s をどのようにルーティングしますか?

次のようなパスにルーターをセットアップする方法がわかりません。

Web ストアのデモがあり、単純な URL で機能しますが、より柔軟な構成を行う方法がわかりません。

これは私が持っているものです:

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

f# - 着信リクエストに特定のヘッダー値が含まれていることを確認する最も簡単な方法は何ですか?

次の形式の単純な Suave.io サーバーがあります。

リクエストに特定の名前と値のヘッダーが含まれていることを確認し、存在しないか正しくない場合は NotOk を返したいと思います。これを達成する最も簡単な方法は何ですか?

私は Suave.io の構成スタイルの初心者です。

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

f# - Suave F# で JSON を返せない

私は丁寧なチュートリアルに従っていますが、JSON をフロントエンドに返すのに苦労しています。私は現在コードを持っています。(Chiron パッケージは使用していません)。Web サーバーを問題なく起動できますが、localhost:8083/hello にアクセスすると、以下のエラー メッセージが表示されます。これをデバッグする方法や、何が原因なのかわかりません。

これが私がフォローしているチュートリアルです

派生クラスはそれを実装する必要があります

System.NotImplementedException: 派生クラスは System.Reflection.Module.GetCustomAttributes (System.Type attributeType, Boolean inherit) <0x104618170 + 0x00010> in :0 at System.Reflection.Emit.ModuleBuilder.GetCustomAttributes (System.Type attributeType, Boolean inherit) <0x1045f1800 + 0x0001b> in :0 at System.Runtime.Serialization.DataContract.GetGlobalDataContractNamespace (System.String clrNs, ICustomAttributeProvider customAttribuetProvider) <0x10da40f60 + 0x00045> in :0 at System.Runtime.Serialization.DataContract.GetDefaultDataContractNamespace (System.Runtime.Serialization.DataContract.GetGlobalDataContractNamespace (System.String clrNs, ICustomAttributeProvider customAttribuetProvider) .Type type) <0x10da40e80 + 0x00051> in :0 at System.Runtime.Serialization.DataContract.GetDCTypeStableName (System.Type type, System.Runtime.Serialization.DataContractAttribute dataContractAttribute) <0x10da3fd50 + 0x000f5> in :0 at System.Runtime.Serialization.DataContract.GetStableName (System.Type タイプ、System.Collections.Generic.Dictionary)2 previousCollectionTypes, System.Boolean& hasDataContract) <0x10da3f570 + 0x00092> in :0 at System.Runtime.Serialization.DataContract.GetStableName (System.Type type, System.Boolean& hasDataContract) <0x10da3f4f0 + 0x00058> in :0 at System.Runtime.Serialization.ClassDataContract+ClassDataContractCriticalHelper.GetStableNameAndSetHasDataContract (System.Type type) <0x10da3f490 + 0x00031> in :0 at System.Runtime.Serialization.ClassDataContract+ClassDataContractCriticalHelper..ctor (System.Type type) <0x10da3e1e0 + 0x00044> in :0 at System.Runtime.Serialization.ClassDataContract..ctor (System.Type type) <0x10da3e120 + 0x00045> in :0 at System.Runtime.Serialization.DataContract+DataContractCriticalHelper.CreateDataContract (Int32 id, RuntimeTypeHandle typeHandle, System.Type type) <0x10da3ab00 + 0x0031e> in :0 at System.Runtime.Serialization.DataContract+DataContractCriticalHelper.GetDataContractSkipValidation (Int32 id, RuntimeTypeHandle typeHandle, System.Type type) <0x10da3aa50 + 0x0005c> in :0 at System.Runtime.Serialization.DataContract.GetDataContractSkipValidation (Int32 id, RuntimeTypeHandle typeHandle, System.Type type) <0x10da3aa10 + 0x00023> in :0 at System.Runtime.Serialization.DataContract.GetDataContract (Int32 id, RuntimeTypeHandle typeHandle, SerializationMode mode) <0x10da3a9c0 + 0x00025> in :0 at System.Runtime.Serialization.DataContract.GetDataContract (RuntimeTypeHandle typeHandle, System.Type type, SerializationMode mode) <0x10da3a240 + 0x00036> in :0 at System.Runtime.Serialization.DataContract.GetDataContract (System.Type type) <0x10da3a1f0 + 0x0002f> in :0 at System.Runtime.Serialization.Json.DataContractJsonSerializer.get_RootContract () <0x10da3a0f0 + 0x0005b> in :0 at System.Runtime.Serialization.Json.DataContractJsonSerializer.InternalIsStartObject (System.Runtime.Serialization.XmlReaderDelegator reader) <0x10da39fa0 + 0x00038> in :0 at System.Runtime.Serialization.Json.DataContractJsonSerializer.InternalReadObject (System.Runtime.Serialization.XmlReaderDelegator xmlReader, Boolean verifyObjectName) <0x10da39b60 + 0x00046> in :0 at System.Runtime.Serialization.XmlObjectSerializer.InternalReadObject (System.Runtime.Serialization.XmlReaderDelegator reader, Boolean verifyObjectName, System.Runtime.Serialization.DataContractResolver dataContractResolver) <0x10da39b30 + 0x00020> in :0 at System.Runtime.Serialization.XmlObjectSerializer.ReadObjectHandleExceptions (System.Runtime.Serialization.XmlReaderDelegator reader, Boolean verifyObjectName, System.Runtime.Serialization.DataContractResolver dataContractResolver) <0x10da39760 + 0x0020f> in :0 at System.Runtime.Serialization.XmlObjectSerializer.ReadObjectHandleExceptions (System.Runtime.Serialization.XmlReaderDelegator reader, Boolean verifyObjectName) <0x10da396f0 + 0x00025> in :0 at System.Runtime.Serialization.Json.DataContractJsonSerializer.ReadObject (System.Xml.XmlDictionaryReader reader) <0x10da39480 + 0x0006d> in :0 at System.Runtime.Serialization.Json.DataContractJsonSerializer.ReadObject (System.IO.Stream stream) <0x10da36030 + 0x0005c> in :0 at Suave.Json.fromJson[T] (System.Byte[] bytes) <0x10da35890 + 0x00103> in :0 at Suave.Json+mapJson@31[a,b].Invoke (Suave.HttpRequest r) <0x10da35740 + 0x0004f> in :0 at Microsoft.FSharp.Core.FSharpFunc2[T,TResult].InvokeFast[V] (Microsoft.FSharp.Core.FSharpFunc 2 func, Microsoft.FSharp.Core.T arg1, Microsoft.FSharp.Core.TResult arg2) <0x1052faeb0 + 0x000a1> in :0 at Suave.Json+mapJson@31-2.Invoke (Suave.HttpContext context) <0x10da356f0 + 0x00034> in :0 at Suave.WebPart+bind@14-5[a,b].Invoke (Microsoft.FSharp.Core.FSharpOption1 _arg1) <0x10da331d0 + 0x0004c> in :0 at Microsoft.FSharp.Control.AsyncBuilderImpl+args@835-1[a,b].呼び出し (aa) <0x10d4db780 + 0x000af> in :0