問題タブ [sendfile]

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

ruby-on-rails - send_file の問題

send_file を使用して、生成した CSV データを送信しています。

しかし、これをダウンロードして取得しますsend_file(「Hello World」文字列を含むファイルをダウンロードする必要があります)

ブラウザから開いた場合:

http://mydomain.com/test.csv

テキストで適切に開きHello Worldます。

また、開発中は正常に動作します。本番環境でのみ、このファイルのみ。

編集

この動作の理由はわかりませんが、send_data私にとっては問題なく動作するように切り替えました。

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

ruby-on-rails-3 - Rails 3-Railsのリモートフォームに応答してsend_fileを実行する方法は?

このクーポンフォームを持っています

コントローラーのアクションのコードを検証した後、次のような確認があります。

指示とともにファイルをブラウザに送信したいのですsend_fileが、何も起こらないようです

そしてログで私は見ることができます

何かあるのかなぁと思っていました

 

私のコントローラーのアクションは次のようになります

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

nginx - Nginxエラーログにメッセージ「X-Accel-Mappingheadermissing」

Nginx1.0.0とPassenger3.0.7を使用してUbuntu8.04でRails3サイトを実行しています。

Nginx error.logで、メッセージが頻繁に表示されるようになりX-Accel-Mapping header missingました。グーグルは私をNginxドキュメントのドキュメントにRack::Sendfile導きます

これで、私のアプリはいくつかのドメインからアクセスでき、アプリで使用send_fileして、要求されたドメインに固有のファイルを配信しています。たとえば、でdomain1.com/favicon.icoファビコンを検索しpublic/websites/domain1/favicon.icoます。Rack::Sendfileこれは正常に機能し、ドキュメントのサンプルが示すように、Nginxを関与させて、それらのファイルを保存するプライベート領域を作成する必要はないと思います。

エラーメッセージを取り除くにはどうすればよいですか?

0 投票する
4 に答える
7949 参照

ruby-on-rails - railsメディアファイルストリームは、send_dataまたはsend_fileメソッドを介してバイト範囲要求を受け入れます

次の問題があります。サウンドはパブリックフォルダから隠されています。これは、サウンドファイルにアクセスできる必要がある特定のユーザーのみが存在するためです。そこで、サウンドURLのように機能する特定のメソッドを作成しましたが、最初に、現在のユーザーがこのファイルへのアクセスを許可されているかどうかを計算します。

ファイルはsend_dataメソッドによって送信されます。問題は、それでも動作する場合は非常に遅く動作することです...サウンドを再生するために使用するjplayerプラグインの開発者は、バイト範囲の要求を受け入れて正しく動作させる必要があると教えてくれました..。。

send_dataまたはsend_fileを使用してファイルを送信することにより、Railsコントローラー内でこれを行うにはどうすればよいですか?

ありがとう、マーカス

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

c# - C# でファイルを送信する

C# で 1 つのポートから複数のコンピューターに同時にファイルを送信できますか? System.Net.Socketsポートで送信するコードが1234あり、ファイルを5台のコンピューターに送信したいのと同じように。同時にできますか?

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

linux - sendfile と同様に、サーバーソケットの出力を別のサーバーソケットの入力に「パイプ」または「チェーン」する方法は?

Linux では、sendfile を使用して、ファイルをソケットに直接転送できます。

しかし、2 つのサーバー ソケットがあるとします。最初のソケットの出力を 2 番目のソケットに出力したいとします。

どうやってするか?それ以外の

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

php - xmlファイルをphpからandroidアプリケーションに送信する

Androidアプリケーションからの投稿へのhttpresponseとしてxmlファイルを送信しようとしています。 ここ
でphpページからデータを送信する方法を理解しました。 応答としてxmlファイルを送信することは可能ですか? または、xmlファイルのコンテンツを文字列として送信し、アプリケーションで解析する必要がありますか? 可能であれば、アプリケーションでファイルを読み取って、情報を解析できるようにするにはどうすればよいですか? ありがとうございました。



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

ruby-on-rails-3 - Rails send_fileがWebサービスから呼び出されたときにデータを送信しない

send_file がファイルを正しく送信できないという奇妙な状況に陥っています。状況は次のとおりです。

Rail バージョン: 3.0.10 および 3.1.0 [テスト用の 2 つの異なるブランチ] Ruby: RVM 上の 1.9.2 Web サーバー: Apache with Passenger

私のクライアントは文書管理システムを持っています。Rails 2 から Rails 3 (そして現在は Rails 3.1) へのアップグレードに取り組みました。以前のシステムはかなり古いものだったので、ほとんどのシステムを再開発しました。1つを除いてすべての機能が機能しています。このアプリケーションにより、ユーザーは自分に割り当てられたドキュメントをダウンロードできます。ユーザーがログインすると、自分に割り当てられているドキュメントが表示され、ダウンロードできます。それは完全にうまく機能します。動作するコードは次のとおりです。

彼ら (私のクライアント) が、.NET ベースの Web サービス (ま​​たはそれが呼ばれる可能性のあるもの) を介して要求されたときにドキュメントを送信する以前のソリューションを作成したクライアントが 1 つあります。Web サービスはユーザーとして認証され、ドキュメント ダウンロード パスに転送されます。Web サービスを認証してから、ファイルをダウンロードするコントローラー アクションにリダイレクトすることはできますが、機能しません。サーバーログには、すべて問題ないことが示されています。

特定の名前と IP を変更しました。IP (12.123.12.123) は、Web サービスをホストするサーバー用であることに注意してください。

私は .NET Web サービスを開発した開発者と電話で話しました。彼は、コンテンツの長さが -1 であり、コンテンツを受信して​​いないことを除いて、すべてのヘッダーを正しく取得していると述べています。彼は、他のすべてのヘッダーは正しいと言いました。

この問題を解決するために; 可能なすべてのオプション(x_sendfile、stream、dispositionなど)を設定して、send_fileの複数のバリエーションを試しました。また、ヘッダーを設定してみました:

しかし、Web サービスを使用してファイルをダウンロードしても何も機能しません。ただし、同じ方法はブラウザーで直接機能します [コードで認証をバイパスしてテストしました]。

send_date を使用してみましたが、うまくいきません:

回避策として、ファイルを送信する代わりにredirect_toを試し、パブリックフォルダーでテストファイルを使用しましたが、機能しました。安全ではありませんが、これはうまくいくようです。唯一の問題は、ブラウザがドキュメントをダウンロードする代わりに開いていることです。

私を助けてください。

更新:この問題は、Rails がチャンク化されたコンテンツを送信するようになり、Web サービスがコンテンツの長さを予期していたという事実に関連していました。

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

ruby-on-rails - Chrome で Ruby on Rails を介して MP3 を再生する

ユーザーがmp3ファイルをアップロードして再生できるようにするRuby on Railsアプリケーションを作成しています。ユーザーがそれらのことを実行できるようになるまで動作していますが、曲をシークするときに問題があります。ユーザーが曲のある場所 (通常は曲の約 2/3 または 3/4) まで先にシーク (または再生) した場合、最初 (たとえば 0:20) に戻ろうとすると、再生タイマーは本来のように 0:20 に進みますが、実際のオーディオは、ユーザーが 0:00 を求めたかのように最初からやり直します。

現在、mp3ファイルを渡したときに使用するchromeの基本的なhtml5 mp3プレーヤーで曲を再生しようとしています。これは、ファイルを提供するために使用しているコードです。うまくいけば、すべての正しいヘッダーが含まれています。

この問題についての洞察をいただければ幸いです。新しいリクエストを引き起こす最初の近くを探すことを除いて、ほとんどすべてが機能するので、私はとても近くにいるように感じます.

ありがとう!

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

c - 'sendfile'で送信されたファイルをどのように受信しますか?

基本的なファイルサーバーを実装しようとしています。私はここにあるsendfileコマンドを使おうとしています:http://linux.die.net/man/2/sendfileTCPを使用しています。

正常に送信することはできますが、バイナリで送信するため、ハングアップするかどうかはわかりません。

recvでファイルを受信しようとしていますが、正しく送信されません。バイナリファイルを受け取り、それを文字列に入れる特別な方法はありますか?

編集:いくつかのコードを提供するように求められました、ここにあります:

SENDFILE呼び出し(サーバープロセスから)

RECIEVE呼び出し(クライアントプロセスから、ループよりもさらに基本的で、1文字だけが必要です)

編集:戻り値をチェックするためのコードを書きました。sendfileはerrno9を与えています-不正なファイル番号。これは、呼び出しの2番目のファイル記述子(送信するファイルの記述子)にあると想定しています。sendfileがintではないと文句を言っていたので、intとしてキャストしました。

上記のsendfile呼び出しで使用したファイルポインタコードを指定して、send fileをどのように使用する必要がありますか?