問題タブ [actix-web]

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

rust - actix_web::HttpRequest を使用して json を構造体に取得するにはどうすればよいですか?

json を HttpRequest から作成した構造体に取得する最も簡単な方法は何ですか。ここにmain.rsがあります

そして、ここに model/tour.rs の構造体があります:

そして、これが handlers/tours.rs のハンドラーです::

このバリエーションを試したのは、これによりコードが非常にシンプルになると思ったからです。

しかし、エラーが発生しました:

FromRequest 関数を TourForm 構造体に実装する必要がありますか、それとももっと簡単な方法がありますか?

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

rust - Actix PayloadConfig の制限が考慮されていません

Actix でのペイロード制限の設定に問題があります。どのように構成しようとしても(app_data、data、サービスレベルなどで)、本文A payload reached size limit.と次のログで常に413 http応答を取得します。Error in response: Overflow

これがコードです

プロキシは次のとおりです。

また、他の構成を設定しようとしました。

しかし、それもうまくいきませんでした

0 投票する
5 に答える
8346 参照

authentication - actix-web で保護されたルートを作成するにはどうすればよいですか

ユーザーがいくつかのルートの許可を持っているかどうかを確認する必要があります。3 つの「スコープ」(ゲスト、認証ユーザー、管理者) を作成しましたが、ユーザーがこれらのルートにアクセスできるかどうかを確認する方法がわかりません。

認証ミドルウェアを実装しようとしていますが、このミドルウェアは、ユーザーが正しい Cookie またはトークンを持っているかどうかを確認する必要があります。(リクエスト ヘッダーから Cookie を出力することはできます) が、インポート方法、actix_identity の使用方法、およびこのミドルウェア内の id パラメータへのアクセス方法がわかりません。

私の問題は Actix-identity に関するものだけではないと思いますが、ミドルウェア内でパラメーターを渡すことができません。

私が試したリソース:

  1. Actix API の認証ミドルウェアの作成 https://www.jamesbaum.co.uk/blether/creating-authentication-middleware-actix-rust-react/

  2. ミドルウェアでの Actix-web トークンの検証https://users.rust-lang.org/t/actix-web-token-validation-in-middleware/38205

  3. Actix ミドルウェアの例https://github.com/actix/examples/tree/master/middleware

たぶん私は完全に間違っていると思います.auth-middlewareは私の問題に対する最良の解決策ではありません. 「保護されたルート」の作成にご協力いただければ幸いです

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

rust - actix-web サーバーの起動時にコールバック関数を実行するには?

現在、サーバーが起動する私の主な機能は次のようになります

サーバーが起動したら、1 つの (非同期) 関数を実行して、別のサーバーに要求を行い、そのサーバーは、起動して実行中のこのサーバーに別の要求で応答する必要があります。

サーバーの起動時に一度だけ実行されるコールバック関数について言及しているドキュメントが見られるかどうかはわかりません。

たとえばrun()、次のように機能させることができます。

編集 私はそれを解決したと思います。自分の質問に答えることができたら回答を投稿します