Tôi đã cố gắng để có được ngFileUpload hoạt động để tôi có thể tải lên hình ảnh và gửi chúng tới DB - trong trường hợp của tôi là mongoLab DB chấp nhận các đối tượng JSON có thể là POST
ed với cú pháp như sau:AngularJS Tải lên tệp và gửi cho DB
$http.post('myMongoName/myDb/myCollection/myTable', {'key': 'value'})
Khá đơn giản. Tuy nhiên, tôi đang bối rối về cách gửi hình ảnh được tải lên bằng cách sử dụng ngFileUpload
cho DB. Tôi đang sử dụng cú pháp quen thuộc được giới thiệu trên trang tài liệu ngFileUpload của:
$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);
});
}
}
}
Nhưng, sau khi đăng đối tượng file
ra, tôi nhận được đối tượng:
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
Không ai trong số đó, bao gồm các nhị phân hình ảnh thực tế có thể được lưu trữ cho DB. Tôi về cơ bản không có ý tưởng về nơi mà hình ảnh thực tế chính nó là thực sự được tải lên! Nó cũng quan trọng cần lưu ý là tôi không nhận được phản hồi từ máy chủ với cú pháp này - mặc dù, nếu tôi có thể nhận được nhị phân của hình ảnh, tôi chỉ có thể sử dụng phương thức quen thuộc $http.post
và tự đẩy hình ảnh vào DB.
Làm cách nào để tìm nhị phân của hình ảnh đã tải lên và đẩy nó vào DB? Hình ảnh tồn tại ở đâu, sau khi được tải lên — và hình ảnh đó được tải lên ở đâu? Tôi đang làm điều này trên localhost
vì vậy có vẻ như trình duyệt đã đọc tất cả các thuộc tính của hình ảnh, nhưng tôi không chắc chắn làm cách nào để biến điều này thành thông tin chi tiết có ý nghĩa mà tôi có thể sử dụng để lưu trữ hình ảnh vào DB bên ngoài của mình.
Cảm ơn bạn đã được trợ giúp.
Bạn nhận được gì ở phía máy chủ. Bạn đang đăng nhập cơ thể yêu cầu? – dcodesmith
Tôi đã bật miền này—github.com/danialfarid/ng-file-upload/wiki/Node-example—server, mặc dù tôi không chắc chắn lý do tại sao tôi cần kích hoạt một số mặt máy chủ khi tôi muốn gửi yêu cầu POST tối ưu cho DB bên ngoài (mongolab). Dù sao, tôi đã đăng xuất tập tin và tôi nhận được một loạt các thuộc tính - mặc dù, tôi vẫn không nhìn thấy các tập tin chính nó, mỗi se. Cảm ơn đã giúp đỡ. –
@nikkwong Bất kỳ giải pháp nào cho câu hỏi ?? tôi cũng nhận được tệp: {} Khi tôi chuyển nó trong yêu cầu Đăng. Xin đề nghị câu trả lời. – Developer