問題タブ [refit]

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 投票する
0 に答える
1250 参照

c# - 500 内部サーバー エラーをスローする同時 HttpClient 呼び出し

私は1 ~ 2 のインターフェイスでRefitを使用しており、Web API リクエスト用のクライアント RESTful クラスを生成しています。

クラスには、以下のような60のプロパティがあります。

そして、以下のように初期化します。

GetHttpClient(string) は、リソース エンドポイントごとに新しい HttpClient インスタンスを返します。

遠く離れた銀河のどこかに、次の方法でこれらすべての API を同時に呼び出すリポジトリがあります。Punchclockを使用して一度に 5 つの呼び出しに制限していることに注意してください。

メソッド呼び出しのタスクのリスト。

私が気づいたように、上記はランダムテーブルに500の内部サーバーエラーをスローします。呼び出しをシリアル非同期に変更するとうまくいきます!

一貫性がない場合、500 内部サーバーを理解することはちょっと不可能です。私のサーバーは呼び出しを 1 つずつ処理しているため、これが私が使用している API のクライアント側の問題なのか、それともサーバーが必要としているのかを理解しようとしています。リクエストを処理するための特別な構成。一度に 5 つずつ処理する必要があります。

Web API 2 サーバーを使用しています。

また、同じ HttpClient インスタンスをセットアップで異なるエンドポイント構成で再利用できるかどうかも考えています。

どんな考えでも大歓迎です。

0 投票する
0 に答える
1744 参照

c# - Refit / HttpClient / ModernHttpClient - 400 Bad Request

最近 ReactiveUI を使い始めましたが、これまでのところとても良いです。物事を理解しようとしているときに、HttpClient / Refit問題に遭遇しました。長いリストがあり、そのリスト内のすべての項目は、次のように API に要求する必要があります。

これは ReactiveObject です

DownloadMultipleCalls では、次のことが起こっています。

最後に、このコード行ですべてがうまくvar searchResult = await api.GetAvaPerStatusRaw(id);いきません。アプリは応答「400 Bad Request」でクラッシュします。エラーを調べると、GET 要求の代わりに id 値がないことがわかります。しかし、初期値を確認すると値がid あるので、それで応答するべきではありません。誰でもこれで私を助けることができますか?ご不明な点がございましたら、お気軽にお問い合わせください。どうもありがとうございました。

敬具、

フェルナンド

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

c# - Refitでget-paramsのurlencodingを無効にする方法は?

私は Refit for RestAPI を使用しています。同じクエリ文字列を作成する必要がありますapi/item?c[]=14&c[]=74

修理インターフェースでメソッドを作成しました

そして CustomParameterFormatter を作成します

CustomParameterFormatter によって生成された文字列14&c[]=74

ただし、エンコードされたパラメーターと生成された URL を修正しますapi/item?c%5B%5D=14%26c%5B%5D%3D74

この機能を無効にする方法

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

c# - Not a Controller から一般的な Unauthorized IHttpActionResult を作成する方法

IHttpActionResultRefit を使用して戻る API 呼び出しがあります。

API 呼び出しを処理するために、別の DLL に別のクラスを作成しました。

このクラスは現在 APIController から派生していませんIHttpActionResultResponseMessageHttpResponseMessageOkおよびを試しContent(Status, Message)ました。これらのほとんどは、から派生する必要がありAPIContollerます。1 つのオブジェクトを作成するだけでは、やり過ぎのように思えます。

IHttpActionResultでは、プレーンなクラス/メソッドから 401 のようなものを返すために、 から継承するオブジェクトを作成するにはどうすればよいでしょうか?

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

xamarin.forms - 電話では Azure Web API 呼び出しが遅いが、Android エミュレーターではうまく動作する

Xamarin Forms アプリで Refit を使用して Web API を呼び出そうとしていますが、エミュレーターではうまく動作しているように見えます (2 から 5 秒) が、実際の Android フォンではほとんどの場合クラッシュするか、まれに戻るのにかなり時間がかかります機会。Azure で基本的な 5 DTU SQL データベースを使用しています。これが原因かも

ここに画像の説明を入力

デバイスから 2 つの呼び出しを試みましたが、上のグラフの急増はその結果です。最初のクエリには少し時間がかかり、返されると (今回はなんとか返信を得ることができました)、遅延後に返される 2 番目の呼び出しを行います。インデックスをまったく使用する必要がありますか..??

パフォーマンスの概要 - SQL データベース