Webサービスがファイルの最初の部分のみを必要とする場合(例えば、PDFファイルの最初のページのサムネイルを生成する場合)、サービスはすべての情報を取得した後に要求を終了する応答を送信できます必要なので、クライアントはファイルの残りの部分をアップロードしませんか?Webサービスでファイルのアップロードを停止し、早期応答を返すことは可能ですか?
2
A
答えて
1
多少裕福なやり方で、そうです。切断する。からRFC 7230, section 6.3.1:
接続はいつでも、意図の有無にかかわらず閉じることができます。
クライアントが要求を再試行しないことをクライアントに知らせる本当の方法はありません。リクエストメソッドが冪等であるかどうかは、すべて沸騰します。同じセクションから:
インバウンド接続が早まってクローズされた場合、クライアントは新しい接続を開くことができ、自動的にこれらの要求のすべてがidempotent methodsを持っている場合、リクエストの中止されたシーケンスを再送信します。
ここで実際に問題となるのは、サーバーがアップロードされたデータチャンクに対してフィードバックを与えることができないクライアント - サーバー通信のポイントです。最後のチャンスはクライアントからヘッダーを読み込んだ直後でしたが、明らかに必要な情報は得られません。別々のリクエストで部分アップロードを試して実装することもできますが、それはother problemsとなります。それに、あなたは落ち着きを失います。
あなたがそのルートに行くことを望むなら、expectation negotiationとchunk extensionsのような知られていない機能から利益を得ることができます。おそらく両方。
このように、あなたは、例えば次のように成功する可能性はほとんどありません。 PHPは苦労しているaborting uploads。同じことがPythonにも当てはまります。 Node.jsはactually do thisを単独で実行することができます。しかし、その解決策は本当にハックであり、クライアントに非常に適応することに依存しています。
関連する問題
- 1. 早期停止とsklearn neural_network.MLPClassifier
- 2. XGBoost CVと早期停止
- 3. WCF Webサービスがいくつかの繰り返し呼び出しの後に応答を停止する
- 4. wcf Webサービスを作成してandroidでxml応答を返す
- 5. h2o GBM早期停止
- 6. Webアプリケーションが停止しているときに、Websphereを503の応答に設定することは可能ですか?
- 7. WebサービスコールからExpandoObjectを返すことは可能ですか?
- 8. WCF REST 4で応答形式の1つとしてHTMLを返すことは可能ですか
- 9. ActionScript3でサウンドを早送り、早送りすることは可能ですか?
- 10. テンソルフローtf.estimatorを使用して早期に停止しますか?
- 11. APIがredux sagaで応答を返すまでページのレンダリングを停止する
- 12. 拡張機能として早期停止を実装する方法
- 13. Azure Appサービス(モバイル)が応答を停止する
- 14. InputStream.read(byte []、0 length)は早期に停止しますか?
- 15. Owin MiddlewareがInvokeメソッドが返すよりも早く応答を返すことはできますか?
- 16. なぜ私のWebサービスでcurl_exec()が応答を返していますか?
- 17. RESTful Webサービスが子スレッドからPOST応答を返すことはできますか?
- 18. Android:サービスで実行可能なトリガーメッセージを停止する方法
- 19. Webサービスの応答はnullですが、SOAPメッセージの応答は有効です
- 20. ダウンロード中にApache2サーバー/ Webサイトが応答を停止する
- 21. AWS ElastiCacheクラスタのノードを停止することは可能ですか
- 22. 応答ネイティブの非同期関数内でリダイレクトするメソッドを呼び出すことは可能ですか?
- 23. ブラウザへの接続を早期に終了し、応答ステータスを返す
- 24. TCP応答の停止
- 25. tf.estimatorで早期に停止する方法は?
- 26. 応答ヘッダーでTomcatサーバー名を変更することは可能ですか?
- 27. テンソルフローで早期停止を実装する方法
- 28. APIオートメーション - ポストコールの応答を得ることが可能です
- 29. 非同期RESTful Webサービスは可能ですか?
- 30. Python Spyderが応答を停止する
あなたはどの言語/フレームワークを使用していますか? –
可能であれば、任意の言語/フレームワーク(Node、PHP、Pythonなど)を使用すると便利です。 –