私はngFileUpload を機能させて、画像をアップロードして DB に送信できるようにしようとしています。私の場合は、次のような構文で編集できる JSON オブジェクトを受け入れるmongoLab DB です。POST
$http.post('myMongoName/myDb/myCollection/myTable', {'key': 'value'})
かなり単純です。ngFileUpload
ただし、 DBを使用してアップロードされた画像を送信する方法について混乱しています。ngFileUpload のドキュメント ページで紹介されているおなじみの構文を使用しています。
$scope.upload = function (files) {
if (files && files.length) {
for (var i = 0; i < files.length; i++) {
var file = files[i];
console.log(file);
Upload.upload({
url: myMongoLabURL,
fields: {'sup': 'sup'},
file: file
})
}).success(function (data, status, headers, config) {
console.log('file ' + config.file.name + 'uploaded. Response: ' + data);
});
}
}
}
しかし、file
オブジェクトをログアウトすると、次のオブジェクトが得られます。
File {}
$$hashKey: "object:76"
lastModified: 1433922719000
lastModifiedDate: Wed Jun 10 2015 00:51:59 GMT-0700 (PDT)
name: "1.png"
size: 138024
type: "image/png"
webkitRelativePath: ""
__proto__: File
DBに保存できる実際の画像バイナリを含むものはありません。私は基本的に、実際の画像自体が実際にどこにアップロードされているのかわかりません!
この構文ではサーバーからの応答が得られないことに注意することも重要です。ただし、画像のバイナリを取得できれば、おなじみの$http.post
方法を使用して、自分で画像を DB にプッシュできます。
アップロードされた画像のバイナリを見つけて、DB にプッシュするにはどうすればよいですか? アップロードされた後、画像はどこに存在し、どこにアップロードされているのでしょうか? 私はこれをすべて行っているlocalhost
ので、ブラウザは画像のすべてのプロパティを読み取ったようですが、これを意味のある洞察に変換して、画像を外部 DB に保存するために使用できる方法がわかりません。
助けてくれてありがとう。