firebase / firebase/firebase-js-sdk

Firebase Storage UploadTask Snapshot does not progress and completion callback/promise is never returned.

Open
#2,783 15 comments 1 reaction 0 assignees View on GitHub
api: storage needs-attention question
Dominant language
TypeScript
Stars
5.1k
Forks
1k
Avg merge
2d 21h
Merged PRs (30d)
37

Description

### [REQUIRED] Describe your environment

* Operating System version: iOS13.4
* Browser version: Mobile Safari
* Firebase SDK version: 7.9.1
* Firebase Product: Storage

### [REQUIRED] Describe the problem
Firebase Storage UploadTask Snapshot does not progress and completion callback/promise is never returned.

I can see the file is created and uploaded properly using Firebase Console.

#### Steps to reproduce:
Upload a file using the firebase storage sdk, wait for task snapshot to return.
Expected result: File is uploaded and progress is reported, and a download URL is returned (this worked until fairly recently, and I cannot determine exactly why this isn't working anymore)

Actual output:
```
console.log: Writing image to DB as image.jpeg...
console.log: Waiting for upload to finish...
console.log: running Upload Progress 0

```

#### Relevant Code:
```javascript
const filename = "image.jpeg";
console.log(`Writing image to DB as ${filename}...`);

const uploadTask = firebase
.storage()
.ref()
.child(filename)
.put(blob, { contentType: "image/jpeg" });

uploadTask.on(
"state_changed",
function(snap) {
var progress = snap.bytesTransferred / snap.totalBytes / 100;
console.log(snap.state, "Upload Progress", progress);
},
function(err) {
console.error("Upload Error", err);
}
);

console.log("Waiting for upload to finish...");

await uploadTask.snapshot.ref
.getDownloadURL()
.then(url => {
console.log("Upload Completed");

resolve(url);
})
.catch(e => {
reject(e);
});
```

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.