問題タブ [skipper]

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

sails.js - アップロード時のスキッパーファイルアップロードディレクトリの変更

.tmp フォルダー以外のディスク内の特別なフォルダーにスキッパーの画像をアップロードする方法はありますか?

.tmp フォルダーが再構築され、アップロードされたすべての画像が削除される可能性があるため、アップロード ディレクトリを変更する必要があります。

これを行う方法を教えてください。

ありがとう

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

javascript - ファイルのアップロード帆 JS スキッパー v0.10.5

スキッパーでファイルをアップロードしていますが、すべてが完全に機能していますが、オプション saveAs に問題があります。関数を使用して値を割り当てていますが、機能しません。req.param('タイトル ') + オプションのファイル拡張子 saveAs?

また、フォルダー assets 内に PDF ファイルをアップロードしてフロント エンド ty に表示するのに適した場所であるかどうかも知りたいです。

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

sails.js - Skipper を使用した Sails.js ファイルの AWS S3 へのアップロード

ファイルをアップロードできるフォームがあります。スキッパーでファイルを直接アップロードすると、完全に機能します。

しかし、最初にサイズを変更してからファイルをアップロードしたいので、次のようにします。

outputBufferだから、私の質問は: の代わりにアップロードするにはどうすればよいreq.file('file')ですか?

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

file-upload - アップロードを中止すると、Sails js/Skipper がクラッシュする

参照: https://github.com/balderdashy/skipper/issues/49

アダプター: skipper-gridfs

基本的なコントローラ コード:

jQuery-File-Upload クライアント ( https://blueimp.github.io/jQuery-File-Upload/ ) があり、ここで説明されている jqXHR abort を使用して「キャンセル」手順を実行しています ( https://github.com/blueimp/ jQuery-File-Upload/wiki/API ):

クライアントが異常終了すると、サーバーがクラッシュし、次のメッセージが表示されます。

try/catch を使用しましたが、うまくいきませんでした。とにかくサーバーがクラッシュします。

これがSkipperの問題なのかMultipartyの問題なのかわかりません-私の知識はここで止まります( https://github.com/andrewrk/node-multiparty/blob/master/index.js ):

最初はこれが jqXHR リクエストが中止された方法だと思っていましたが、アップロード中にタブを閉じるという単純な行為がサーバーをクラッシュさせるため、中止されたアップロードに関する一般的な Skipper の問題のようです(別のメッセージ):

単純なアップロード コントローラー (Skipper ではない) を使用しているときに、タブを閉じてアップロードを中止しようとしましたが、クラッシュはありません。

それで、誰かがこれが起こっているのを見ましたか、そして回避策はありますか?

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

node.js - nginx / Sails.js: 不完全なファイルのアップロード

Sails.jsを使ってアプリを開発しています。このアプリには、アップロード コントローラーがあります:
https://github.com/makinacorpus/mnhn_bai/blob/master/api/controllers/Object3DController.js

ドキュメントで説明されているように、このコントローラーはボンネットの下でスキッパーを使用します。

問題は、大きなファイルをアップロードすると、それらが不完全に保存され、アップロードされたサイズが同じになることはなく、15 MB のファイルに対して 7 MB から 14 MB まで変化することです。

アーキテクチャは次のとおりです:
haproxy -> nginx -> node.js/sails。

nginx リバース プロキシを単純な apache + proxypass 構成に置き換えると、アップロードは問題なく動作します。

node.js アプリをシンプルな Python アップロード コントローラー (フラスコなど) に置き換えると、アップロードも正しい長さとデータを示します。

もちろん、nginx はバッファ サイズ、client_body_timeout、および client_max_body_size に対して正しく構成されており、前述のように、フラスコはアップロードを正しく受信しています。

nginx アプリでアップロードすると 200 レスポンスになるので、ファイルがアップロードされたように見えますが、実際にはディスク上のファイルは不完全です。

nginx デバッグ ログでは、次のことがわかります。

問題は、スキッパーがアップストリーム レベルの無限ループで「終了」イベントにヒットしないように見えることです。帆の標準出力

興味深いことに、アップロード後のディスク上のファイルには、別の無関係なリクエストからのヘッダーが最後に含まれています。

また、他のリクエストには、他のリクエスト ヘッダーはなく、不完全なファイルしかありません。ここで、欠落しているビットは元のファイルの末尾からのもので、先頭は常に正しいです。

Apache との主な違いは、nginx がデータをセイル アプリにすばやく大量に送信することです。それどころか、Apache はリクエストをストリーミングしています。これは、nginx がバッファリングを要求するためです。

誰かがそのアップロードの問題を掘り下げるためにスキッパーでどこから続行するかについてのアイデアを持っている場合!

この例で save メソッドを置き換えると、nginx からのビットが正しく書き込まれていることがわかります。POST されたデータに完全で正しいファイルがあるため、エラーは明らかにスキッパー要求の消費のどこかにあります。

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

javascript - アップロードファイルが送信されたかどうかを確認するSails JS

Sails JS でファイルをアップロードするときに、リクエストで送信されたファイルがない場合、これがコントローラーのアクションであると見なされ、サーバーがクラッシュします。

ヘッダーを確認しようとしましたが、ファイルが送信されているかどうかに違いはないようです。

私はこのようなものを探しています:

ファイルをアップロードするか、同じ API ではないというこの動作を実現する方法はありますか?

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

javascript - Sailsjs で http リクエストの制限を変更する


リクエストに 413 Request Entity Too Large が含まれています。これは、base64 でエンコードされた複数の URI イメージを送信するためで、文字数が多いためです。

とにかく、SailJS でこの制限を拡張する方法が見つかりません。どうやらセイルズは bodyParser にスキッパーを使用していますが、スキッパーのドキュメントには何も見つかりません。

http設定ファイルにあると思います...

誰かが私に方法を教えてくれたら:)ありがとう!