問題タブ [hyper]

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

rust - この生涯の問題を解決するにはどうすればよいですか?

以下のコードでは、は の実装でstring十分長く存続しません。メソッドの内部でスコープに入り、メソッドが終了するとスコープから外れる理由を理解していますが、それへの参照を保持します。Into<Body<'a>>RequestParameters<'a>stringintoBody<'a>

少なくとも、それがstring長続きしない理由だと思います。

私が理解していないのは、このコードを構造化してstringの寿命を修正する方法です。

このコードの目的は、HashMap ( "a"to"b"など) を POST リクエストの本文 ( など) の文字列にすること"?a=b"です。これを行うためのより良い方法がある場合はお知らせください。ただし、この生涯の問題を修正する方法を理解することは、私にとって大きなメリットとなります。

stringなぜ長生きしないのかについて私が間違っている場合は、私にも知らせてください. 私はまだ Rust のライフタイム システムを理解しようとしているところなので、これを理解することは非常に役立ちます。

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

amazon-s3 - raw httpsリクエストを使用してAWS API Gateway Service ProxyをS3ファイルにアップロードする

まず、タイトルが長くてすみません。

s3 プロキシとして機能するように API ゲートウェイを設定したので、API URL に PUT リクエストを送信してファイルをアップロードできます。API は問題なく動作します (または、少なくとも動作すると思います) が、テキスト ファイルしか正しくアップロードできないようです。

アップロードされたテキスト ファイル (例: Content-Type=text/plain) の場合、ローカルでのファイルのサイズは、s3 バケットにアップロードされたファイルのサイズと同じです。ただし、バイナリ ファイル (例: Content-Type=application/pdf) には当てはまりません。s3 バケット内のファイルのサイズが大きくなります。s3 からバイナリ ファイルをダウンロードすると、開くことができません。破損しています。

リクエストを送信するためのさびたコードは次のとおりです。ハイパーの http クライアントを使用しています

コメントアウトされたコードからわかるように、Content-Encoding=base64 を使用して、ファイルから読み取ったバイトをエンコードしてアップロードしようとしました。しかし、 Content-Encoding=base64 は、s3 が受け入れる有効なエンコーディング タイプではないようです。Content-Encoding を設定するたびに、完全にアップロードできませんでした (500: 内部サーバー エラー、間違ったサイズのファイルが s3 バケットに表示されません)。しかし、テキストファイルは完全に機能しています。

参考のため:

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

rust - Hyper ハンドラ間で HashMap を共有するにはどうすればよいですか?

Hyper 0.10 で簡単なインメモリ URL 短縮機能を実装して Rust を学ぼうとしています。HashMapハンドラーでミュータブルを閉じようとしたことが原因だと思われる問題が発生しています。

をスレッド間Arcで共有するために を使用する必要がありますか? HashMapもしそうなら、それはどのように見えますか?また、私はこの問題について完全に間違っている可能性があります。エラーメッセージは私には非常に不可解です。

0 投票する
3 に答える
3223 参照

rust - Hyper で応答ボディを表示すると、ボディのサイズのみが表示されます

Hyperを使ってURLの中身(本文)をテキスト表示してみた

ただし、このスクリプトを実行すると、本体のサイズが返されます。

私は何を間違えましたか?私は何かを誤解しましたか?

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

rust - `for<'r, 'r, 'r> ...` はスレッド間で安全に送信できません

私はRustを学び、ハイパーの上に構築されたマイクロルートシステムを構築しようとしました(これは学習目的のためであり、フレームワークが存在することは知っています)。

「複雑な」型を と共有する方法がわかりませんhyper::server::Handler。エラー メッセージを読みましたが、残念ながら、それを修正する方法がわかりません (ほとんどの場合、Rust コンパイラは何を修正するかを指示するだけで、現時点ではよくわかりません)。

これは、私が試したことの(非)動作の単純化された例です。

エラーは次のとおりです。

単純な整数を使用すると機能しますが、Route型では機能しません。

したがって、特性に問題があり、「スレッド間で安全に送信できない」という問題があります。hyperドキュメントを読んで、 を追加しましたMutexが、私はばかげているに違いありません。自分が何をしているのかわかりません。Rust の学習をやめるべきなのか、それとも挑戦し続けるべきなのかわかりません。

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

rust - コンパイラが十分な型情報を推測できないため、hyper::Client を作成できません

Hyper を試すために、GET の例から始めました。例がコンパイルされない ( no method `get` in `client`) という事実は別として、問題を 1 行にまとめました。

このコードはコンパイルされません:

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

multithreading - ハイパーでは、スレッドごとに独立したハンドラーを使用する代わりに、ハンドラーが同期を実装する必要があるのはなぜですか?

Hyper には、次の実装があります。HandlerSync

は異なるスレッドから呼び出すことができるため、Handlerを実装する必要があると述べています。SyncHandler

私には、これは不要なパフォーマンス ペナルティのように思えます。私が好むのはSenderHandler、スレッドごとに 1 つをセットアップし、それぞれが独立していることです。これにより、実装の要件がなくなりSyncます。

Hyper、Rust の型システムを誤解していますか、それとも不可能ですか?

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

openssl - git2 と hyper の両方を使用する: openssl が複数回リンクされている

hyper と git2 の両方を同時に使用するものを構築しようとしています。現在、openssl が 2 回リンクされているという問題があります。shepmasterのヒントでCargosにたどり着きましたfeatures。試してみましたが、まだ行き詰っています。

私が得ている正確なエラーcargo buildは次のとおりです。

私が知る限り、git2 とハイパーの両方で openssl が必要です。誰かが私が間違っていることを知っていますか? ハイパー(および適切な測定のためにCookie)のデフォルト機能を無効にしたため、opensslはもう必要ありません。ロックファイルを調べて、openssl他に必要かどうかを確認しましたが、何も見つかりませんでした。しかし、私はまだエラーが発生します。残念ながら、貨物は依存関係がどこから来たのかを教えてくれません。

Cargo.tomlの依存関係セクションとロックファイルは次のとおりです。

興味のある場合は、Cargo.lockを次に示します。