2017-09-14 5 views
1

ここで本当に単純で短期的な質問ですが、ファイルをアップロードしようとするとき、またはクライアント側でAPIをメソッドに入れるべきですか?また、方法のポイントは何か、私はそれがあなたのアプリを安全に保つことだと知っているが、私はユーザーがどのように変更するか分からないアプリケーションを壊す。また、いつメソッドを使用するか説明できますか?Meteor - APIからデータを挿入するとメソッドに入るはずですか?

readImage(e){ 
    let file = e.target.files[0]; 
    const CLOUDINARY_URL = "my_URL"; 
    const CLOUDIARY_UPLOAD_PRESET = "my_Upload_Preset" 
    let formData = new FormData(); 

    formData.append("file", file); 
    formData.append("upload_preset", CLOUDIARY_UPLOAD_PRESET) 

    axios({ 
     url: CLOUDINARY_URL, 
     method: "POST", 
     headers: { 
     "Content-Type": "application/x-www-form-urlencoded" 
     }, 
     data: formData 
    }).then(function(res){ 
     console.log(res) 
     console.log(res.data.secure_url); 
    }).catch(function(err){ 
     console.log(err); 
    }) 
    console.log(file); 
    } 

答えて

1

ファイルのアップロード自体はクライアントで行う必要がありますが、サーバーメソッドに処理を加えることをお勧めします。クライアント上ですべての処理を行うと、クライアントからのデータベースアクセスを有効にする必要があります。つまり、悪意のあるユーザーがブラウザコンソールからデータベースを変更する可能性があります。

ログインしているユーザーに、要求された操作を実行する権限があるかどうかを確認する必要があります。これらのメソッドは、コンソールからコマンドを入力することで呼び出すこともできますが、使用可能な操作の数を減らすことで、攻撃面を大幅に小さくすることができます。

+0

はい、ファイルアップロードAPIは、実際のページの一部であり、ここではすべての検証などを行います。ありがとう –

関連する問題