2016-05-25 11 views
0

環境:抽出ファイル名

HTML5

はJavaScript

Angularjs

のNode.js

express.js

クックHBaseの

質問

私は懸念や世界にディレクトリパスの表示を防ぐために、ウェブ環境内に実装セキュリティ対策を理解しています。しかし、私は、選択したファイルへの完全なディレクトリパスを知る必要があるという問題があります。

私は内部ウェブサイト用のウェブページを構築しています。ウェブページは、タブ区切りファイルをユーザが選択できるようにする必要がある。このタブで区切られたファイルは、会社によって制定され、外部監査人が要求するポリシーであるネットワークサーバー上に存在します。このファイルは、クライアント固有のデータを使用して、さまざまなクライアントに対して存在する可能性があります。これにより、ファイルはサーバー上の異なるフォルダ構造内に存在します。ユーザーは、適切なファイルを選択し、そのデータをデータベースにアップロードする必要があります。ファイルのサイズ(数百万行までの10まで)に基づいて、ユーザーはWebページがすぐに処理されるのを待つことを望んでいません。したがって、解決策はタスクを作成することです。タスクには、データをデータベースにアップロードする前にデータを操作するために必要なすべてのパラメータが含まれます。私は単純な解決策は、共通のディレクトリにファイルをアップロードすることですが、それは実用的ではないことを理解しています。ユーザーは、異なるパラメータを使用して同じタブ区切りファイルをデータベースにアップロードするいくつかのタスクを設定できます。

タスクの作成プロセスにディレクトリ構造のファイル名が含まれているようにしたいと考えています。バックグラウンドプロセスがタスクを実行すると、元の場所からデータを抽出できます。さらに、複数のタスクで同じデータを抽出している場合、私は懸念していませんが、データのコピーが複数存在することがあります。

この問題を解決する方法を提案する可能性のあるコードスニペット、ウェブサイトなどのヘルプをお待ちしております。現時点では、PHPはオプションではありません。経営陣の決定は、PHPの使用を妨げます。

TIA

アンソニー

答えて

0

それは正確に可能ではないので、私は2つのソリューションを参照してください。 1つは、実際の永続的な場所ではなく、ファイルの一時的な場所へのパスを取得しようとすることです。

あなたはFileInputクラスのIDを持って、あなたはjQueryのを使用していると仮定します。そうでなければ私はパスの別々の入力を行うと、コピー&ペーストする方法についてユーザーに簡単な指示を示すだろう

$('#fileInput').change(function(event) { 
    var tmppath = URL.createObjectURL(event.target.files[0]); 

console.log("Temporary Path(Copy it and try pasting it in browser address bar):" 
console.log(tmppath); 
}); 

をURLをWindows Explorerウィンドウから選択します。

関連する問題