Ich frage mich, wie man Dateien über die URL auf den Firebase-Speicher hochladen kann (zum Beispiel). Ich verschrotte Bilder von einer Website und lade ihre URLs ab. Ich möchte diese URLs über eine foreach-Anweisung weitergeben und sie auf den Firebase-Speicher hochladen. Gerade jetzt, ich habe die Feuerbasis Upload-via-Eingang mit diesem Code arbeiten:Bild von URL auf Firebase-Speicher hochladen
var auth = firebase.auth();
var storageRef = firebase.storage().ref();
function handleFileSelect(evt) {
evt.stopPropagation();
evt.preventDefault();
var file = evt.target.files[0];
var metadata = {
'contentType': file.type
};
// Push to child path.
var uploadTask = storageRef.child('images/' + file.name).put(file, metadata);
// Listen for errors and completion of the upload.
// [START oncomplete]
uploadTask.on('state_changed', null, function(error) {
// [START onfailure]
console.error('Upload failed:', error);
// [END onfailure]
}, function() {
console.log('Uploaded',uploadTask.snapshot.totalBytes,'bytes.');
console.log(uploadTask.snapshot.metadata);
var url = uploadTask.snapshot.metadata.downloadURLs[0];
console.log('File available at', url);
// [START_EXCLUDE]
document.getElementById('linkbox').innerHTML = '<a href="' + url + '">Click For File</a>';}
Frage, was ich
var Datei ersetzen = evt.target.files [0];
mit, damit es mit externer URL anstelle eines manuellen Upload-Prozesses funktioniert?
var file = "http://i.imgur.com/eECefMJ.jpg"; funktioniert nicht!
Es gibt keine Notwendigkeit, sie zu speichern (vielleicht nicht möglich) mit Speicher. Die Links sind Strings, speichern Sie sie in der Datenbank wie alle anderen Daten. – theblindprophet